Even with C/C++ in embedded projects we do not dynamically allocate memory. We try to statically get everything setup on initialization. This is much safer and allows software to run without leaks and memory concerns. We need to run 5 9's for reliability and cannot take this risk. I was hoping that the Micro .net framework would take this approach with turning off the GC as an option.