Bart De Smet wrote a hands-on tutorial that explains quite in-depth how one can build a custom data provider that is LINQ enabled using IQueryable. When completing Bart's "IQueryable Tales" tutorial, you'll have created a simple LDAP data provider that allows you to query Active Directory server. Here are the different parts of his tutorial:

Bart is now starting to work on a "LINQ to Sharepoint" project.