title: .NET Throwing Custom Exceptions
body: <p>Can anyone shed some light on the pros and cons of throwing custom exceptions (which inherit from System.Exception), or the proper way to use them?  I'm already aware of the when/when not to throw exception, but I am looking for guidance on how to create my own custom exceptions.</p>