It would be very convenient, esp in the context of the functional programming paradigm (which thanks to MoreLinq is much more attainable in C#!), to have kind of a "default" Zip() that returns tuples of the two zipped collections. Right now we always have to provide function like (x1, x2) => (x1, x2), which, if we accept tuples as first-class citizens, seems repetitive and adds clutter to the code.