The beautiful post LINQ Framework Design Guidelines is a valuable source if you write libraries of code in .NET. The introduction of LINQ is going to change some habits and to introduce new needs. These guidelines are really useful to help you write LINQ friendly libraries.
It is also good for me reading that many of the guidelines posted here are aligned with suggestions and best practices we proposed in the upcoming Microsoft Programming LINQ book. We have just finished its writing and it will be on the shelf within May.
One of the interesting arguments is the IEnumerable<T> vs. IQueryable<T> support. We have a whole chapter dedicated to extending LINQ, and one interesting idea (which is not forbidden by these guidelines, even if it is not explicitly suggested) is creating an IEnumerable<T> extension method receiving an Expression<Func<>> instead of a Func<>. We made an example of Where implementation for sorted collections using this technique. The guideline explicitly suggest to implement IQueryable<T> in this situation, and I agree with this. However, from a didactical point of view, I've found really interesting using this sample to introduce the more complex topic of IQueryable<T> implementation.
Well... still two months to wait just to read in book reviews if our approach describing this complex topic was right...