LINQ to Objects は、要は System.Collections.Generic.IEnumerable{T} に対する拡張メソッドでしかないので、 .NET 3.0 の System.Linq.Enumerable と全く同じものを自作してしまえば、.NET 2.0 でも LINQ to Objects が使える。 System.Linq.Enumerable は実装難易度もそんなに高くないし、Mono のソースコードでも使えばコピペで済む(他のクラスへの依存も少ないのでほぼファイルのコピーで終わり)し、簡単。