O .NET Framework disponibiliza uma vasta coleção de Exceptions para representar situações adversas causadas por um programa.
Dentre elas as mais comuns de encontrar são:
| Exception | Quando é criada |
| System.OutOfMemoryException | Alocação de memória com new falha. |
| System.StackOverflowException | Pilha exaurida, geralmente quando alguma chamada recursiva é chamada sem limites. |
| System.NullReferenceException | Objeto contendo um valor null referenciado. |
| System.TypelnitializationException | O construtor gera uma exception e não existe um catch dentro do construtor. |
| System.InvalidCastException | Conversão explícita é inválida. |
| System.ArrayTypeMismatchException | O tipo atribuído ao array é incompatível com o tipo do array. |
| System.IndexOutOfRangeException | Indexação de array fora de faixa: menor que zero ou maior que o máximo possível. |
| System.MulticastNotSupportedException | Erro na execução de chamada de um delegate multicast porque o delegate não tem o tipo de retorno void. |
| System.ArithmeticException | Classe base de outras exceptions como DivideByZeroException e OverflowException. |
| System.DivideByzeroException | Divisão por zero em tipos inteiros. |