Both LINQ and Rx work with collections. LINQ works with collections that implement
IEnumerable, which we will call enumerable collections. Rx works with collections that implement an extension to
IQueryable, which will refer to as observable collections.
The enumerable collection is familiar, as it is the basis for
foreach loops in C#. Each enumerable collection is able to provide the Next item in the collection until the collection is exhausted. The details of how this is done will be covered later in the book.
Every generic collection provides the ability to enumerate the values. This means that each collection allows you to ask for the first element, then the next, and the following and each ...