I created a simple fileSystemWatcher program to monitor a UNC path. It does work for correctly for sub directories. So it appears that GetUniqueTopLevelFolders is the cause. When only the parent directory is returned then its unlikely there will be a major issue with how many fileSystemWatchers are created. I'll hopefully have a better patch shortly.