Ok, so I know how to write both a service and a background application, I'm looking more for general opinions because this is an odd use-case in the sense that I haven't been able to find examples of this online to give me guidance.
Basically the issue I am running into is I have a server (an application, not a web server) that houses all my application logic, and a set of clients that can send messages to the server to do things.
The clients, obviously, are traditional UI applications. Problem is what the server should be...
It doesn't need a GUI, and when it is started, there should be only one version of it on the machine. On the other hand, it should only be running if there is atleast one client, otherwise it should shut off.
I may be over-thinking it, but should I make this a service or a background application that is instantiated by the first client?
I am referencing things like: Windows Service vs Windows Application - Best Practice