Now that we have completed our deep dive, there are a couple of additional elements to possibly further enhance the application. A few ideas are discussed here.
Logging
Logging utilizing NLog (https://nlog-project.org/) or a similar open source project is highly recommended as your application complexity increases. This will allow you to log to a file, console, or third-party logging solution such as Loggly at varying levels. For instance, if you deploy this application to a customer, breaking down the error level to at least Debug, Warning, and Error will be helpful when debugging issues remotely.
Utilizing Reflection further
As noted earlier in this section to create flexibility and adaptability, we utilized Reflection to parse the command-line arguments. You could take this a step further and replace the switch case statement/standard flow in the Program class with an entirely reflection-based approach, meaning for every action...