I just did a little experiment:
public abstract class MyClass { private static int myInt = 0; public static int Foo() { return myInt; } publi
Per the C# spec, a static variable will be initialized no later than the first time a class is loaded into an AppDomain, and will exist until that AppDomain is unloaded - usually when the program terminates.