I am going to develop an application which will process online data (comming through socket) and it does not need any user interaction.
I am thinking of a simple con
In fact, it really depends on the usage of your application, I think.
For example, if you only need to run your processing at a specific time, the usage of the command line can be enough.
The windows service will be really interesting if your process need to run continuously, and silently (no user interaction).
You can also consider the task scheduling in Windows. Basically, it will run your application (through a .bat file for example) at specified times. It can be helpfull if your application needs to be run every day at 02:00 for example... In "Control Panel", you have an option "Scheduled Tasks". Then, you click on "Add Scheduled Task", and follow the wizard...