using System; 
using System.IO; class Traverse 

static void TraverseFolder(DirectoryInfo dir) 

  FileInfo[] filesInDir = dir.GetFiles(); 
  foreach(FileInfo file in filesInDir) 
  { 
    Console.WriteLine("{0}", file.FullName); 
  }   DirectoryInfo[] directories = dir.GetDirectories(); 
  foreach(DirectoryInfo newDir in directories) 
  { 
    TraverseFolder(newDir); // recursive call 
  } 
} public static void Main() 

          String path = "D:\\"; 
          DirectoryInfo di = new DirectoryInfo(path); 
          TraverseFolder(di);