I started to write a large application in C# for the first time in my life. I wrote sample module to test the idea behind my software. This module contained several dozen C# dictionaries and lists of objects that each had several members and properties.
I was shocked that after initializing core objects it end up utilizing about 40MB of RAM.
I tested and found out that more than 30MB is allocated after object initialization, but I was under the impression that given the size of my objects, no more than a few hundred kilobytes should have been consumed.
Have I done something wrong or is .NET naturally memory intensive compared to native code applications?