How to stop a static constructor from running in .NET?
You can't do this. Static constructor will be invoked before any instance of the type is created or any static member is referenced. It's called by the CLR and you have absolutely no control over the exact timing.
So the only way to avoid calling the static constructor is to never reference and using the type that contains this static constructor. Why would you define a static constructor in the first place if you don't want it to be executed? Putting an Environment.Exit(0)
instruction into a static constructor is like taking a gun and shooting yourself into the leg.