Sometimes you run into something and you wonder why you haven't noticed it before. Yesterday I discovered a feature in Visual Studio 2005 called TracePoints.
When you're debugging your application, setting breakpoints in your code isn't always sufficient. In some cases they mess up the flow of your code or you have to pass a breakpoint so many times that it's hard to keep track off. So you end up putting debug or trace statements in your code, which is not pretty.
To solve this problem, you can use TracePoints in Visual Studio 2005. TracePoints inserts comments in the Debug output window, whithout stopping or modifying the code. This is how to do this.
I used it to solve some threading issues and it's been a great help. Hope this helps you to.