Como leer los archivos de un servidor de FTP usando .NET

Una de las cosas que he estado haciendo en mis tiempos libres es lograr hacer un pequeño cliente de ftp y aqui esta el código para leer la lista de archivos del server.


System.Net.FtpWebRequest request =
(FtpWebRequest)WebRequest.Create (
"ftp://www.contoso.com/");
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails ;

request.Credentials = new NetworkCredential(
"usuario", "password");
FtpWebResponse response =
(FtpWebResponse)request.GetResponse();

Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
Console.WriteLine(reader.ReadToEnd());
Console.WriteLine("Directory List Complete,
status {0}", response.StatusDescription);
Console.ReadLine();

reader.Close();
response.Close();

Saludos