FlashFXP. Is by far my favorite and has one of the best layouts for accessing files and folder trees remotely and locally. Its does drag and drop, compression and speed limiting. Of course it uses FTP, but also more secure SFTP and SSH protocols to connect to you web server. It has a free version and also a paid version.
To connect your SFTP client to the distant server, follow these steps:
Choose File > Site Manager... from the main menu.
In the Site Manager window, press the New Site button, then fill in the site name as demozilla in the provided space.
Fill in the SFTP server your host provided in the Host: field.
In the Logon Type: drop down, choose Normal, then fill in your provided username and password in the relevant fields.
Fill in the correct port and other information.
Your window should look something like this:
Now press Connect to connect to the SFTP server.
Note: Make sure your hosting provider offers SFTP (Secure FTP) connection to your hosting space. FTP is inherently insecure, and you shouldn't use it.
Once connected, your screen should look something like this (we've connected to an example of our own to give you an idea):
Let's examine what you're seeing:
On the center left pane, you see your local files. Navigate into the directory where you store your website (e.g. mdn).
On the center right pane, you see remote files. We are logged into our distant FTP root (in this case, users/demozilla)
You can ignore the bottom and top panes for now. Respectively, these are a log of messages showing the connection status between your computer and the SFTP server, and a live log of every interaction between your SFTP client and the server.
Uploading to the server
Our example host instructions told us "To publish on the web, put your files into the Public/htdocs directory." You need to navigate to the specified directory in your right pane. This directory is effectively the root of your website — where your index.html file and other assets will go.
Once you've found the correct remote directory to put your files in, to upload your files to the server you need to drag-and-drop them from the left pane to the right pane.