throw (C# Reference)

The throw statement is used to signal the occurrence of an anomalous situation (exception) during the program execution.


The thrown exception is an object whose class is derived from System.Exception, as shown in the following example.

class MyException : System.Exception {}
// ...
throw new MyException();

Usually the throw statement is used with try-catch or try-finally statements. For more information and examples, see try-catch (C# Reference) and How to: Explicitly Throw Exceptions.


This example demonstrates how to throw an exception using the throw statement.

public class ThrowTest2
    static int GetNumber(int index)
        int[] nums = { 300, 600, 900 };
        if (index > nums.Length)
            throw new IndexOutOfRangeException();
        return nums[index];

    static void Main() 
        int result = GetNumber(3);

    The System.IndexOutOfRangeException exception occurs.

Code Example

See the examples in try-catch (C# Reference) and How to: Explicitly Throw Exceptions.

C# Language Specification

For more information, see the C# Language Specification. The language specification is the definitive source for C# syntax and usage.

See Also


How to: Explicitly Throw Exceptions


try-catch (C# Reference)

The try, catch, and throw Statements in C++

C# Keywords

Exception Handling Statements (C# Reference)


C# Programming Guide

Other Resources

C# Reference