C# | Adding the elements of the specified collection to the end of the List Last Updated : 11 Jul, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report List<T>.AddRange(IEnumerable<T>) Method is used to add the elements of the specified collection to the end of the List<T>. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid value for reference types and it also allows duplicate elements. If the Count becomes equals to Capacity, then the capacity of the List increases automatically by reallocating the internal array. The existing elements will be copied to the new array before the addition of the new element. Syntax: public void AddRange (System.Collections.Generic.IEnumerable<T> collection); Parameter: collection: It is the specified collection whose elements will be added to the end of the List<T>. Exception: This method will give ArgumentNullException if the collection is null. Note: The collection itself cannot be null, but it can contain elements that are null if type T is a reference type. The order of the elements in the collection is always preserved in the List<T>. Below programs illustrate the use of above discussed method: Example 1: CSharp // C# program to illustrate the // List.AddRange Method using System; using System.Collections.Generic; class Geeks { // Main Method public static void Main(String[] args) { // Creating a List of Strings List<String> firstlist = new List<String>(); // adding elements in firstlist firstlist.Add("Geeks"); firstlist.Add("GFG"); firstlist.Add("C#"); firstlist.Add("Tutorials"); Console.WriteLine("Before AddRange Method"); Console.WriteLine(); // displaying the item of List foreach(String str in firstlist) { Console.WriteLine(str); } Console.WriteLine("\nAfter AddRange Method\n"); // Here we are using AddRange method // Which adds the elements of firstlist // Collection in firstlist again i.e. // we have copied the whole firstlist // in it firstlist.AddRange(firstlist); // displaying the item of List foreach(String str in firstlist) { Console.WriteLine(str); } } } Output: Before AddRange Method Geeks GFG C# Tutorials After AddRange Method Geeks GFG C# Tutorials Geeks GFG C# Tutorials Example 2: CSharp // C# program to illustrate the // List.AddRange Method using System; using System.Collections.Generic; class Geeks { // Main Method public static void Main(String[] args) { // Creating a List of Strings List<String> firstlist = new List<String>(); // adding elements in firstlist firstlist.Add("Geeks"); firstlist.Add("GFG"); firstlist.Add("C#"); firstlist.Add("Tutorials"); Console.WriteLine("Before AddRange Method"); Console.WriteLine(); // displaying the item of List foreach(String str in firstlist) { Console.WriteLine(str); } Console.WriteLine("\nAfter AddRange Method\n"); // taking array of String string[] str_add = { "Collections", "Generic", "List" }; // here we are adding the elements // of the str_add to the end of // the List<T>. firstlist.AddRange(str_add); // displaying the item of List foreach(String str in firstlist) { Console.WriteLine(str); } } } Output: Before AddRange Method Geeks GFG C# Tutorials After AddRange Method Geeks GFG C# Tutorials Collections Generic List Reference: https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1.addrange?view=netframework-4.7.2 Comment More infoAdvertise with us Next Article C# | Gets or Sets the element at the specified index in the List K Kirti_Mangal Follow Improve Article Tags : Misc C# CSharp-method CSharp-Generic-List CSharp-Collections-Namespace CSharp-Generic-Namespace +2 More Practice Tags : Misc Similar Reads C# | How to insert the elements of a collection into the List at the specified index List<T>.InsertRange(Int32, IEnumerable<T>) Method is used to insert the elements of a collection into the List<T> at the specified index. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid 3 min read C# | How to get all elements of a List that match the conditions specified by the predicate List<T>.FindAll(Predicate<T>) Method is used to get all the elements that match the conditions defined by the specified predicate. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot.List class can accept null as a valid value for refe 3 min read C# | How to remove the element from the specified index of the List List<T>.RemoveAt (Int32) Method is used to remove the element at the specified index of the List<T>. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid value for reference types and it also allow 3 min read C# | Gets or Sets the element at the specified index in the List List<T>.Item[Int32] Property is used to gets or sets the element at the specified index. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid value for reference types and it also allows duplicate elemen 2 min read C# | Insert an element into Collection<T> at specified index Collection<T>.Insert(Int32, T) method is used to insert an element into the Collection<T> at the specified index. Syntax: public void Insert (int index, T item); Parameters: index : The zero-based index at which item should be inserted. item : The object to insert. The value can be null 3 min read C# | How to perform a specified action on each element of the List List<T>.ForEach(Action<T>) Method is used to perform a specified action on each element of the List<T>. Properties of List: It is different from the arrays. A list can be resized dynamically but arrays cannot. List class can accept null as a valid value for reference types and it a 2 min read Like