class IntClass { public int Int; }

static void Main(string[] args)
{
var intArray = new[] { 1, 2, 3 };

var e = intArray.Select(i => new IntClass { Int = i });

var array1 = e.ToArray();
var array2 = e.ToArray();

Console.WriteLine(array1[0] == array2[0]);
}

これがfalseになるのは驚いた
LINQは全然直感的じゃないぞ
むしろけっこう騙される