After having to retrofix logging into existing applications on mulitple occurrences to be able to investigate and debug runtime issues, I’m now a firm believer that logging should be designed into every piece of software.
Its the only real way of knowing not only what your code is doing but what it has already done should you be investigating retrospectively.
It shouldn’t just be an after thought.
The first reference I generally add to a .NET project will be log4net, that way I know that its always available .
Most IDEs will provide a way of inserting code snippets, small reusablable code chunks that can be customised when being added to your code. I have snippets setup for adding loggers, for loops with logging built in to summarize the number of items before starting and a completion message afterwards.