I recommend FileZilla for transferring files to and from your hosting service provider via ftp. It's much easier than using the CPanel file manager for uploads and downloads, especially when several files are involved. Sometimes you need both though, such as if I'm uploading and extracting a ZIP file; then I'll use FileZilla for the upload, and the CPanel file manager to extract the file.
However, FileZilla has some unfortunate default settings that can cause you grief if you don't change these defaults. In particular, it can end up mangling the CR/LF line termination in the files on your server. Historically, the ftp protocol converts text files to the native CR/LF format for the system the file is being transferred to; but this messes up binary comparisons and is generally a really bad idea since it becomes more difficult to tell if the file has been modified or not. Better to keep the file in the format it was originally in. Also some text editors like Windows Notepad will screw with the CR/LF settings in a file, even if you didn't modify the contents. This is evil.
Whether that all made sense to you or not, I recommend the following changes to FileZilla's default settings to avoid these problems:
Select Binary Transfers By Default
Edit → Settings → Transfers → File Types → Default Transfer Type: Binary
Make TextPad The Default Editor
Install the TextPad text editor
Edit → Settings → File Editing → Default Editor: Use custom editor: path to TextPad.exe
Select Always Use Default Editor