Which might say somtehing about the state of C#.
I recall there was a problem with 1.02 collecting Classes that the runtime thought were not needed. This resulted in expensively allocated singletons vanishing and inconvenient times and performance hits initializing all new singletons when they were referenced again.
Yes it sucked and was stupid. The workaround at the time was to launch the VM with --no-class-gc (something like that). I think this is now the default. Classes ought not to be subject to GC or ought to be held strongly by their ClassLoader (the latter is probably best).