I can shed light on a "strange date."
Windows file time is based on 1/1/1601.
File time is a 64-bit value that represents the number of 100 nanosecond intervals elapsed from 12:00 AM January 1, 1601 Coordinated Universal Time (UTC). The system records the file time when applications create, access and write files.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724290(v=vs.85).aspx
It looks like your file system is reporting a 16-year bias towards DirectoryInfo (which inherits from the FileSystemInfo class that calls GetFileAttributesEx() ).
.Net Shell
public DateTime CreationTimeUtc { get{ long fileTime = (long)((ulong)this._data.ftCreationTimeHigh << 32 | (ulong)this._data.ftCreationTimeLow); return DateTime.FromFileTimeUtc(fileTime); } }
DateTime.FromFileTimeUtc adds a value equal to 1/1/1601:
long ticks = fileTime + 504911232000000000L; return new DateTime(ticks, DateTimeKind.Utc);
I can not find any value for the bias (16 years). Seems too big to be DST bugs or leap years, even accumulated over the centuries.
I find it strange that both CreationTime and CreationTimeUtc return exactly the same date (if your local time does not coincide with UTC).
source share