Which filter of FileSystemWatcher do I need to use for finding new files

Please look here for a detailed explanation of the FileSystemWatcher: http://www.c-sharpcorner.com/uploadfile/mokhtarb2005/fswatchermb12052005063103am/fswatchermb.aspx

You will have to look for created files if you want to look for added files.

You specify the type of change to watch for by setting the value of a WatcherChangeType enumeration. The possible values are as follows:

  • All: The creation, deletion, change, or renaming of a file or folder.
  • Changed: The change of a file or folder. The types of changes include: changes to size, attributes, security settings, last write, and last access time.
  • Created: The creation of a file or folder.
  • Deleted: The deletion of a file or folder.
  • Renamed: The renaming of a file or folder.

Also you may just wire up the event handler that fires if a file is created (added) and not implement all the other events since they are not interesting for you:

watcher.Created += new FileSystemEventHandler(OnChanged);

Set up the watcher:

FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = "Blah";

watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
    | NotifyFilters.FileName;

watcher.Created += new FileSystemEventHandler(OnChanged);

watcher.EnableRaisingEvents = true;

Then implement the FileCreated delegate:

private void OnChanged(object source, FileSystemEventArgs e) {
    Console.WriteLine("File: " +  e.FullPath + " " + e.ChangeType);
}