I have a line of code checking if a directory exists and then getting the list of files in it.
System.IO.Directory.Exists(@\"\\\\Server\\Folder\\\");
I may be a little late, but i've found that there is a problem on this method of the Directory class.
Instead i've used DirectoryInfo with impersonation this way:
new DirectoryInfo(path).Exists
This way you avoid the whole identity change problem, which was denied by our IT area.
I hope this helps somebody!