"binary" both ways will never corrupt a file, but it may limit your choices with doing anything with a file on the intermediate platform (usually your PC). For example, a .php file downloaded from a Linux server will not be in the standard Windows text format (all the lines will be run together), which limits which editors you can use.
"ASCII" is dangerous when you have a "binary" file (images, compressed/zipped files, executable programs such as .exe, etc.) -- anything not human-readable text -- and you're moving a file between systems of different types (Windows/Linux/Mac). If any of several specific characters or sequences appear by chance in the file (e.g., 0x0D0A in a .jpg file on a Windows PC), they will be translated (e.g., to 0x0A on a Linux server). This is usually irreversible, as there are other native "target" characters that you won't know whether they can be translated or not when moving the file back down to the PC (i.e., not all the 0x0A bytes you see in the corrupted image should be translated [back] to 0x0D0A).
Your best bet is to always transfer in "binary", and if you want to edit a human-readable text file on your PC, get an editor (such as ViM) that will view/edit Linux-format text files on a PC. Some editors may even give you a choice of saving the file in either format. Notepad/Wordpad/Word will not be able to handle "binary" transferred files.