In this chapter, you saw the key role played by
IEnumerable in LINQ and you worked with a number of the key operators. All of this was brought together in two example programs that used these operators to extricate values and summary information from disparate data sources.
In the next chapter, you'll see that many of the same operators are used in Reactive Extensions, with the difference that rather than creating
IEnumerable collections, you'll be creating (asynchronous) observable collections.