List<T>.Item Property (Int32)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the element at the specified index.

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

public T this[
	int index
] { get; set; }


Type: System.Int32

The zero-based index of the element to get or set.

Property Value

Type: T

The element at the specified index.

Exception Condition

index is less than 0.


index is equal to or greater than Count.

List<T> accepts null as a valid value for reference types and allows duplicate elements.

This property provides the ability to access a specific element in the collection by using the following syntax: myCollection[index].

Retrieving the value of this property is an O(1) operation; setting the property is also an O(1) operation.

The example in this section demonstrates the Item property (the indexer in C#) and various other properties and methods of the List<T> generic class. After the list has been created and populated using the Add method, an element is retrieved and displayed using the Item property. (For an example that uses the Item property to set the value of a list element, see AsReadOnly.)


Visual Basic, C#, and C++ all have syntax for accessing the Item property without using its name. Instead, the variable containing the List<T> is used as if it were an array.

The C# language uses the keyword to define the indexers instead of implementing the Item property. Visual Basic implements Item as a default property, which provides the same indexing functionality.

List<string> dinosaurs = new List<string>();

Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);

// Shows accessing the list using the Item property.
Console.WriteLine("\ndinosaurs[3]: {0}", dinosaurs[3]);

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top