using System; namespace ConsoleApp1 { class Cron { public DateTimeOffset Origin { get; set; } public TimeSpan Period { get; set; } public DateTimeOffset Next() { var delta = DateTimeOffset.Now - Origin; var n = Math.Ceiling(delta / Period); return Origin + n * Period; } } }