You need to create a class that can be accessed from another application or another computer on the network. However, you don't need cross-platform compatibility, and you want optimum performance.
Make the class remotable by deriving from System.MarshalByRefObject, and create a component host that registers the class with the .NET remoting infrastructure.
How It Works
Remoting allows you to make an object accessible across process and machine boundaries. Although web services are ideal when you need to share functionality across platforms or trust boundaries, remoting is one of the best-performing choices for a closed system in which all components are built on .NET and the Windows operating system. ...