title: How to set up windows client to web-based dll
body: <p>I have an application that began its life as a C#-based Windows GUI that used marshalling to talk to a C DLL.</p>
  
  <p>I now need to separate the Windows client and DLL so that the client is installed on a remote PC and communicates with the C DLL over the internet.
  A further complication is that I want to have multiple Windows clients connecting to the C DLL.  </p>
  
  <p>This whole world is new to me, so excuse me if the following are naive questions.</p>
  
  <p>My questions:</p>
  
  <p>0) What is the best method for having the client communicate with the DLL over the internet?  TCP/IP Sockets?</p>
  
  <p>1) I need to make modifications to my DLL to have it service multiple clients.  But I need some piece of middleware that collects the queries from the different clients, feeds them to the DLL, and then sends the results back to the appropriate client.  Is there any code (such as node.js) that would facilitate this?</p>