配列の入れ子を平坦化するには LINQ のSelectManyを使いますが逆のメソッドがありません。 自分で作る必要がありますがLINQ のGroupByで簡単に行うことができます。 「コレクションをN個ずつの要素に分割する」ことをChunkというそうです。 ※Chunk…「かたまり」という意味 以下のコードは[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]を [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]に変換するコードです。 // 対象のコレクション var list = Enumerable.Range(1, 10); // N 個ずつの N var chunkSize = 3; var chunks = list.Select((v, i) => new { v, i }) .GroupBy(x => x.i / chunkSize)