There’s a really interesting analysis of different implementations of the Singleton design pattern on this site (http://www.yoda.arachsys.com/csharp/singleton.html).
I typically use the second version although I have to say that the fourth and fifth versions are ones I’d never have ever conceived myself. Although the implementation may be blatantly obvious to others, I consider them sort of ingenious. On the same note I’m going to stick to using the second one due to its explicit nature. In the situation where a person just quickly looks over the code without placing much thought into what was done, it may seem extremely unusual and unnecessary.
I’ll re-write an article referencing this article later on. The reason… because I know that some point in the future, this article will go down and I’ll get annoyed because my site will have become one of those sites that links to articles that sound absolutely great and upon accessing the link I find that its broken.