DayOfWeek day = DayOfWeek.Sunday;
DateTime start = DateTime.Now;
DateTime end = DateTime.Now.AddYears(1);
TimeSpan ts = end - start;
int count = (int)Math.Floor(ts.TotalDays / 7);
int remainder = (int)(ts.TotalDays % 7);
int sinceLastDay = (int)(end.DayOfWeek - day);
if (sinceLastDay < 0) sinceLastDay += 7;
if (remainder >= sinceLastDay) count++;
int numberOfSundays = count;
Ref:http://stackoverflow.com/questions/248273/count-number-of-mondays-in-a-given-date-range