Server-side automation
Console applications are executed from the command line without any user interfaces. Therefore, console applications are a very effective way of performing tasks on a regular basis without any user interaction. I write it when there are requirements for such a type of automation.
Automation not only helps to speed up the workflow but also helps to avoid errors. Manually executed tasks are always risky. You don’t know who does them and if the person is not experienced with these tasks, it can lead to errors. By automating tasks, you save yourself from making that type of mistake.
Fast Coding
Creating a console application is much faster than creating an application including a user interface. There are a lot of questions regarding user interface, color combination, user experiences, etc. for an application with a user interface. A console application does not need to consider such requirements. Just to concentrate on functional requirements.
Robustness
Once created, a console application does not have to be changed unless the requirements change. Console applications do not need to change with every new shiny framework, or tool that’s trending right now.
Conclusion
I write console applications when certain functions to be performed on a regular basis which can be executed without user interactions. It makes it flexible, easy to modify and add functionality when needed.