I have made a generic parser for parsing ascii files. When I want to parse dates, I use ParseExact function in DateTime object to parse, but I get problems with the year.
You will need to determine some kind of threshold date appropriate for your data. If the parsed date is before this date, add 100 years. A safe way to do that is to prefix the input string with the appropriate century. In this example I've chosen 1970 as the cutoff:
string input = ...;
DateTime myDate;
if (Convert.ToInt32(input.Substring(0, 2)) < 70)
myDate = DateTime.ParseExact("20" + input, ...);
else
myDate = DateTime.ParseExact("19" + input, ...);
Jon Skeet also posted a nice example using DateTimeFormatInfo
that I had momentarily forgotten about :)