Microsoft has a team called Patterns & Practice that works, among others, on common patterns for robust enterprise applications. They document and make code available to solve some of the common problems - which oftentimes are reinvented by each company or team that needs to deal with them.
Today I read a link that was on my list for quite sometime called
The Transient Fault Handling Application Block
It provides not only patterns, but also code that can be downloaded via a NuGet package that implements fault handling. And, even if you don't want to use it, it is a good example of code and design that you can reuse in your application - especially if it requires customization that would be hard to implement using the design the Patterns & Practice team put in place.