prueba a configurar estas propiedades del componente IdFTP
tambien podria ser que Firewall o antivirus bloquea puertos pasivos
A veces parece que conecta pero al hacer List cierra la sesión.
Código:
FTP.Passive := True;
FTP.TransferType := ftBinary;
FTP.ListFormat := flUnix;
si, ditFile indica que es un archivo y no un directorio