Apart from ensuring that your are using the latest versions of WinSCP and the network card driver, there are two settings of the network card that may cause problems with transfers. Both have to do with offloading tasks from the operating system to the network card, but sometimes the handshake between the two fails.
The problem is that these settings either need to be done on the client or on the FTP server (which I don't know if you control). You can try them one at a time, undoing the ones that don't help.
For lack of information, I'll assume you are on Windows. If you are not, better add to the post your exact operating system and network-card model.
Disable Large Send Offload
- Right-click the Network Adapter in Network Connections and then click Properties.
- Click the Configure button and then the General or Advanced tab.
- Set the "Large Send Offload" parameter to Disable.
Disable Checksum Offloading
- Click Start, click Run, type regedit, and then click OK.
- Locate and then click the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
- In the right pane, make sure that the DisableTaskOffload registry entry exists. If this entry does not exist, follow these steps to add the entry:
1. On the Edit menu, point to New, and then click DWORD Value.
2. Type DisableTaskOffload, and then press ENTER.
- Click DisableTaskOffload.
- On the Edit menu, click Modify.
- Type 1 in the Value data box, and then press ENTER.
- Exit Registry Editor.