static void Main(string[] args) { Observable .Timer(TimeSpan.FromSeconds(0.5), Scheduler.Immediate) .Do(_ => Debug.WriteLine("Start")) .SelectMany(_ => Observable.Timer(TimeSpan.FromSeconds(1))) // timer simulates FromAsyncPattern call .Do(_ => Debug.WriteLine("Finish")) .Repeat() .Subscribe(); Console.ReadLine(); }