using System.Collections.Generic;
public static void Main()
Console.WriteLine("Start");
var startTime = DateTime.Now.Date.TimeOfDay.Add(TimeSpan.FromMinutes(10));
var endTime = startTime.Add(new TimeSpan(22,20,00));
Console.WriteLine("StartTime={0}", startTime);
Console.WriteLine("EndTime={0}", endTime);
Console.WriteLine("Start");
var intervals = getIntervals(startTime, endTime, 30);
foreach(var item in intervals)
Console.WriteLine("{0}", item.ToString());
Console.WriteLine("End");
private static IEnumerable<TimeSpan> getIntervals(TimeSpan startTime, TimeSpan endTime, int interval)
while(startTime <= endTime.Add(TimeSpan.FromMinutes(10)))
startTime = startTime.Add(TimeSpan.FromMinutes(interval));