I need to write a daemon that needs to run in the background on a Windows 7 Server and listen to remote client requests. On the other end will be Windows 7 desktop (Professional, may be...). Is creating a Windows Service (aka NT Service) the best way to implement this? What other options are available? Having the daemon as a web service - should that be considered? If not why? This daemon basically needs to listen to remote clients, receive encrypted login messages, by connecting to a database authenticate users and send back approval/denial message. Not sure if this matters but I will be using Borland Builder (C++) to build this tool. Can add more details if needed.