I have seen comments like: "Gets or sets is required flag" for properties like IsRequired. Now that is something I do not really do. I mean isn't it obvious?
I use XML comments on top of classes, methods and properties where get/set does something more than just getting/setting value. Apart from this, I comment before a block where complex processing is going on or where rather weird looking code is present.
Other reason for comment is that you dont need to go to code to see a description of a function. For example in VS you get the comment of your code in the intellisense. That help you to code more quickly that figure out what does the function by the name (if you are lucky and the name reflect the functionality.
you might find bugs in your own not previously commented code and blamimg / shaming yourself
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
I recently had a conversation with a cohort where he said, "gee, I wish I'd commented why I wrote this code this way!" I think everybody should learn to comment why and only "how/what" to supplement obscure algorithms. I include myself in that camp, as I hardly ever comment on "why". I'm going to try and discipline myself to do that for a couple weeks and see what I discover.
I am in the favor of region. Declare a region and within it you can do whatever you feel like. Which also is kind of territorizing your code. So we can look into that section. And yes commenting is also a must.