Lazy by default
Compose queries as pipelines - no work happens until you enumerate. Chain dozens of operators without touching the source data.
LINQ-expressive, type-safe, and infinitely extensible. Compose operators over any iterable - nothing runs until you ask for it.