using System.Reactive.Linq;
var chars = new[] { "A", "B", "C", "D", "E", "F", "G" };
Console.WriteLine("Observable.Buffer");
foreach (var window in Observable.ToObservable(chars).Buffer(3))
Console.WriteLine($"---");
foreach (var c in window)
Console.WriteLine($"Enumerable.Chank");
foreach(var chunk in chars.Chunk(3))
Console.WriteLine($"---");