In VB6, it was a simple matter to write applications that served up COM classes, the application would run as a system-wide singleton and would be able to serve COM classes to multiple processes. I believe this is called a COM LocalServer.
What's the equivalent in .NET? How can I make a single executable that handles requests from multiple applications or processes?