There are plenty of useful tutorials on writing a custom LINQ Provider, however I find these two very valuable:
1. Old, good LINQ to LDAP by Bart De Smet
2. Surprisingly complete tutorial by Matt Warren where a LINQ-to-SQL-like custom provider is explained very thoroughly.
Do not also miss the LINQ's Dynamic Query helper and the MetaLINQ to discover other interesting variations on LINQ.