It’s because GDScript doesn’t have a way to define a multidimensional array with a constructor and so you have to construct the multidimensional array by creating an array of arrays. This is in part due to the fact that, in GDScript, an array can hold a reference to any data type. In this way, it’s very similar to the Python programming language.
In the future with Godot 4, I believe typed arrays can be defined, so it may be possible in Godot 4.0 to construct a multidimensional array in a way similar to C# and other typed languages in Godot 4.0.