When to use Try...Catch
Sometimes I feel a bit confused about the proper usage of "Try...Catch" blocks. The (healthy?) developer instinct is to put it wherever possible. However, I think that an over-usage of it can lead to an unnecessary cumbersomeness of the code, without a real benefit.
Since most of the applications today have some generic error handling at the application level (eg. at the Application_Error event of the global.asax file, on web apps) which usually writes something to a log and redirects the user to a friendly error page, there is no real need to wrap everything with Try...Catch block.
IMHO, we will need to use it on the following cases:
1. When a special action is required for this specific exception, eg. closing connection to the database.
2. When the original exception should be replaced / wrapped in another, maybe friendlier, exception.
In any other case, no such block is necessary. The generic handler will take care of it.
What do you think of it? Am I missing something?