シャグ配列は配列の配列のためのヒープ+配列それぞれのヒープ、つまりint[3][3]だと4つのオブジェクトからなる
メモリ的にも連続してない上に4つのオブジェクトヘッダ分(32bitだと8byte?64bitだと16byte?)余計に要する
int[3,3]の多次元配列は実体はint[9]の1オブジェクトとしてレイアウトされてそうだけど実際どうなってるかはunsafeで確かめてみないと分からない
Console.WriteLine(Unsafe.AsPointer(ref array[0,0]));とかでアドレスを調べてみると良い