匿名形とかクラス内の複数のプロパティで何かやりたいって場合は、メソッド式は避けた方がいいんだろうか。 「IEqualityComparer」クラスの書き方が悪い可能性は大いにありえるけども、「IEqualityComparer」をわざわざ作らないといけないのは面倒。 データ数が少ない場合は、DataRow.ToTable の方がわずかに早いけど、行数が多くなるとLinq のクエリ式の方が早くなる。また、コードの可読性もLinq のクエリ式の方が良い。 Linq のGroupBy だと他にもグループの件数やら最大値・最小値なんかも持ってこれるみたいだし、Linq はできる子みたい。 Distinct とGroupBy の使い分けは、可読性も良いしDistinct で足りる時はDistinct で良いと思う。 注意点としては、Linq のクエリ式の特徴でクエリを宣言したときではなく、