See a hierarchy of useful exception classes for use in C#
The example Throw standard exceptions in C# explains how to throw exceptions to indicate a problem in a program. Throwing an exception is easiest if you can find an existing exception class that correctly represents your situation. The following list shows a hierarchy of some of the most useful exception classes.
- System.Object
- System.Exception
- System.SystemException
- System.ArgumentException
- System.ArithmeticException
- System.ArrayTypeMismatchException
- System.FormatException
- System.IndexOutOfRangeException
- System.InvalidCastException
- System.InvalidOperationException
- System.IO.IOException
- System.NotImplementedException
- System.NotSupportedException
- System.NullReferenceException
- System.OutOfMemoryException
- System.RankException
- System.Security.SecurityException
- System.Security.VerificationException
- System.UnauthorizedAccessException
- System.SystemException
- System.Exception
throw new NotImplementedException("The SelfDestruct method is not yet implemented.");

Looks like the download link is broken.
Reply to this
Oops! Sorry. This example wasn't supposed to have a Download button because it doesn't have an example program. However, these related examples have downloads:
Reply to this