Using WinSCP version 4.2.8 (and a rather older version) I get Timeout detected, unable to retrieve directory listing.
This is when connected to an office LAN. From home, the same client talks to the same FTP server fine.
With Filezilla, I had the same problem, and solved it by setting Active mode. Filezilla has three options (default, active, passive). In WinSCP, the "passive mode" checkbox is unchecked; changing it makes no difference.
Here is the WinSCP log:
. 2010-09-02 14:18:43.274 --------------------------------------------------------------------------
. 2010-09-02 14:18:43.274 WinSCP Version 4.2.8 (Build 818) (OS 6.1.7600)
. 2010-09-02 14:18:43.274 Login time: 02 September 2010 14:18:43
. 2010-09-02 14:18:43.274 --------------------------------------------------------------------------
. 2010-09-02 14:18:43.274 Session name: s******a
. 2010-09-02 14:18:43.274 Host name: ftp.s******a.com (Port: 21)
. 2010-09-02 14:18:43.274 User name: saxoni (Password: Yes, Key file: No)
. 2010-09-02 14:18:43.274 Tunnel: No
. 2010-09-02 14:18:43.274 Transfer Protocol: FTP
. 2010-09-02 14:18:43.274 Ping type: C, Ping interval: 30 sec; Timeout: 15 sec
. 2010-09-02 14:18:43.274 Proxy: none
. 2010-09-02 14:18:43.274 FTP: FTPS: None; Passive: No [Force IP: No]
. 2010-09-02 14:18:43.274 Local directory: default, Remote directory: home, Update: No, Cache: Yes
. 2010-09-02 14:18:43.274 Cache directory changes: Yes, Permanent: Yes
. 2010-09-02 14:18:43.274 DST mode: 1
. 2010-09-02 14:18:43.274 --------------------------------------------------------------------------
. 2010-09-02 14:18:43.314 Connecting to ftp.s******a.com ...
. 2010-09-02 14:18:43.319 Connected with ftp.s******a.com. Waiting for welcome message...
< 2010-09-02 14:18:43.319 220-Microsoft FTP Service
< 2010-09-02 14:18:43.516 220 S******e FTP Service
> 2010-09-02 14:18:43.519 USER *******
< 2010-09-02 14:18:43.531 331 Password required for s****.
> 2010-09-02 14:18:43.531 PASS ********
< 2010-09-02 14:18:43.581 230 User ****** logged in.
> 2010-09-02 14:18:43.581 SYST
< 2010-09-02 14:18:43.594 215 Windows_NT
> 2010-09-02 14:18:43.594 FEAT
< 2010-09-02 14:18:43.606 211-FEAT
< 2010-09-02 14:18:43.844 SIZE
< 2010-09-02 14:18:43.844 MDTM
< 2010-09-02 14:18:43.844 211 END
. 2010-09-02 14:18:43.846 Connected
. 2010-09-02 14:18:43.846 Got reply 1 to the command 1
. 2010-09-02 14:18:43.846 --------------------------------------------------------------------------
. 2010-09-02 14:18:43.846 Using FTP protocol.
. 2010-09-02 14:18:43.846 Doing startup conversation with host.
> 2010-09-02 14:18:43.851 PWD
< 2010-09-02 14:18:43.866 257 "/s*****" is current directory.
. 2010-09-02 14:18:43.866 Got reply 1 to the command 16
. 2010-09-02 14:18:43.871 Getting current directory name.
. 2010-09-02 14:18:43.876 Retrieving directory listing...
> 2010-09-02 14:18:43.876 TYPE A
< 2010-09-02 14:18:43.884 200 Type set to A.
> 2010-09-02 14:18:43.886 PORT 192,168,0,100,194,26
< 2010-09-02 14:18:43.899 200 PORT command successful.
> 2010-09-02 14:18:43.899 LIST -a
< 2010-09-02 14:18:43.914 150 Opening ASCII mode data connection for /bin/ls.
. 2010-09-02 14:18:58.479 Timeout detected.
. 2010-09-02 14:18:58.479 Could not retrieve directory listing
. 2010-09-02 14:18:58.479 Got reply 1004 to the command 2
* 2010-09-02 14:18:58.484 (ESshFatal) Lost connection.
* 2010-09-02 14:18:58.484 Timeout detected.
* 2010-09-02 14:18:58.484 Could not retrieve directory listing
* 2010-09-02 14:18:58.484 Opening ASCII mode data connection for /bin/ls.
* 2010-09-02 14:18:58.484 Error listing directory '/*****'.
Here is the log from Filezilla:
Status: Resolving address of ftp.s*****a.com
Status: Connecting to 217.**.**.**:21...
Status: Connection established, waiting for welcome message...
Response: 220-Microsoft FTP Service
Response: 220 S*****e FTP Service
Command: USER saxoni
Response: 331 Password required for saxoni.
Command: PASS ********
Response: 230 User s***** logged in.
Command: SYST
Response: 215 Windows_NT
Command: FEAT
Response: 211-FEAT
Response: SIZE
Response: MDTM
Response: 211 END
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/s*****i" is current directory.
Command: TYPE I
Response: 200 Type set to I.
Command: PORT 192,168,0,100,194,34
Response: 200 PORT command successful.
Command: LIST
Response: 150 Opening BINARY mode data connection for /bin/ls.
Response: 226 Transfer complete.
Status: Directory listing successful