This documentation is archived and is not being maintained.

ArgumentOutOfRangeException Class

The exception that is thrown when the value of an argument is outside the allowable range of values as defined by the invoked method.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public class ArgumentOutOfRangeException : ArgumentException, 

ArgumentOutOfRangeException is thrown when a method is invoked and at least one of the arguments passed to the method is not null and does not contain a valid value.

ArgumentOutOfRangeException is used extensively by:

ArgumentOutOfRangeException behaves identically to ArgumentException. It is provided so that application code can differentiate between exceptions caused by invalid arguments that are not null, and exceptions caused by null arguments. For errors caused by null arguments, see ArgumentNullException.

ArgumentOutOfRangeException uses the HRESULT COR_E_ARGUMENTOUTOFRANGE, which has the value 0x80131502.

For a list of initial property values for an instance of ArgumentOutOfRangeException, see the ArgumentOutOfRangeException constructors.

The following example defines a class to contain information about an invited guest. If the guest is younger than 21, an ArgumentOutOfRangeException exception is thrown.

using System;

class Program
    static void Main(string[] args)
            Guest guest1 = new Guest("Ben", "Miller", 17);
        catch (ArgumentOutOfRangeException outOfRange)

            Console.WriteLine("Error: {0}", outOfRange.Message);

class Guest
    private string FirstName;
    private string LastName;
    private int Age;

    public Guest(string fName, string lName, int age)
        FirstName = fName;
        LastName = lName;
        if (age < 21)
            throw new ArgumentOutOfRangeException("age","All guests must be 21-years-old or older.");
            Age = age;

    public string GuestInfo()
        string gInfo = FirstName + " " + LastName + ", " + Age.ToString();


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0