At the most abstract level, LINQ (Language Integrated Query) can query against two types of provider: IEnumerable, which is virtually any collection type in the .NET Framework and IQueryable object such as LINQ to SQL, or Entities, or XML objects. For the first case, you're actually leveraging the...