I recently discovered something by accident after three years of programming in .NET. I am testing an ASP.NET site (yep - that custom SharePoint site that is finally about to go live) and needed to check the affects on users with different priveleges.
The problem is that on my development machine, I am always seen as me and automatically logged in. So I had to test from another machine on the network whose Windows login was not associated with the Sharepoint site - thereby forcing me to log in each time. This way I was able to test a variety of logins.
However, that is not a development machine and I can't debug on it - or can I? I had the application open and running in debug mode on the development machine when I started the site up on the other computer. For some reason, the application hung on the other computer. So I looked back over at my development machine and there it was sitting on a breakpoint! So now I know this neat trick - perhaps someone told me once a long time ago and I just forgot.
Ever since, I have been definitely leveraging this technique and solving some problems that were a little harder to get at before.