@Dexter:
In my case the number of static fields will be minimal so I don't think it should be a problem to just call them all.
Although, this lazy initialization... How would that work in cases like this:
private static DateTime initTime = DateTime.Now;
...or cases where the static field is something that does real work, like a class that creates a file in its constructor, etc? Some other class instance might need to use that file. A bit of a contrived example, but still...