Have you ever had a situation where all of those nested try/catch blocks just get in your way when trying to chase down a problem? I just hate that.
Luckily, in Visual Studio 2008 (and other versions, I am sure), there is a handy dandy way to disable all of the try/catch blocks when you run the application in debug mode from the IDE. Just go to the Debug menu, select Exceptions, click the box under the Thrown column for Common Language Runtime Exceptions (or others if that is what you are looking for), and click OK. Now when the code has a problem, you see it right away instead of trying to work backwards through nested try/catch blocks in different classes and modules.
Just don’t forget to put it back to the way it was when you are done. I am not a huge fan of try/catch blocks, but their normal use definitely has its place.