Другими словами, эта ориентированная на многопотоковое исполнение реализация Singleton:
public class Singleton
{
private static Singleton instance;
private Singleton() { }
static Singleton()
{
instance = new Singleton();
}
public static Singleton Instance
{
get { return instance; }
}
}
Просто чтобы быть педантичным, но нет такой вещи, как статический конструктор, а скорее статические инициализаторы типов, вот небольшая демонстрация циклической зависимости статического конструктора, которая иллюстрирует этот момент.