What does beforefieldinit flag do?
See my article on this very issue. Basically, beforefieldinit means “the type can be initialized at any point before any static fields are referenced.” In theory that means it can be very lazily initialized – if you call a static method which doesn’t touch any fields, the JIT doesn’t need to initialize the type. In … Read more