Try something like this:
DateTime startTime = DateTime.Parse("10:00");
DateTime endTime = DateTime.Parse("14:00");
TimeSpan duration = new TimeSpan(0, 20, 0);
List<DateTime> appointments = new List<DateTime>();
while (startTime < endTime)
{
appointments.Add(startTime);
startTime += duration;
}
That builds a list of appointments at 20 minute intervals.