I think the number of the months is ambiguous as each month get the different number of days. However, if based on DateTime.MinValue, you can use like:
TimeSpan difference = endDate - startDate;
DateTime age = DateTime.MinValue + difference;
// Min value is 01/01/0001
int ageInYears = age.Year - 1;
int ageInMonths = age.Month - 1;
int ageInDays = age.Day - 1;
Console.WriteLine("{0}, {1}, {2}", ageInYears, ageInMonths, ageInDays);