I heard that there is a hard limit on the size of .Net Array. It is said that the maximum amount of memory that can be allocated to any single instance of an Array object ( regardless of whether it’s int[], double[] or your own array) is 2GB. And no, if you have a 64 bit machine, the 2GB limit is still there.
I’m not sure whether my impression is correct or not. Anyone can confirm?
That is correct. No single object can be larger than 2 GB.
This question has additional details and some useful links: Single objects still limited to 2 GB in size in CLR 4.0?