C# | Copying the Collection<T> elements to an array Last Updated : 11 Jul, 2025 Comments Improve Suggest changes Like Article Like Report Collection<T>.CopyTo(T[], Int32) method is used to copy the entire Collection<T> to a compatible one-dimensional Array, starting at the specified index of the target array. Syntax: public void CopyTo (T[] array, int index); Parameters: array : The one-dimensional Array that is the destination of the elements copied from Collection<T>. The Array must have zero-based indexing. index : The zero-based index in array at which copying begins. Exceptions: ArgumentNullException : If the array is null. ArgumentOutOfRangeException : If the index is less than zero. ArgumentException : If the number of elements in the source Collection<T> is greater than the available space from index to the end of the destination array. Below given are some examples to understand the implementation in a better way: Example 1: CSHARP // C# code to copy the entire Collection // to a compatible one-dimensional Array, // starting at the specified index of // the target array using System; using System.Collections.Generic; using System.Collections.ObjectModel; class GFG { // Driver code public static void Main() { // Creating a collection of strings Collection<string> myColl = new Collection<string>(); myColl.Add("A"); myColl.Add("B"); myColl.Add("C"); myColl.Add("D"); myColl.Add("E"); // Creating a string array string[] myArr = new string[myColl.Count]; // Copying the entire Collection to a // compatible one-dimensional Array, // starting at the specified index // of the target array myColl.CopyTo(myArr, 0); // Displaying the elements in myArr foreach(string str in myArr) { Console.WriteLine(str); } } } Output: A B C D E Example 2: CSHARP // C# code to copy the entire Collection // to a compatible one-dimensional Array, // starting at the specified index of // the target array using System; using System.Collections.Generic; using System.Collections.ObjectModel; class GFG { // Driver code public static void Main() { // Creating a collection of ints Collection<int> myColl = new Collection<int>(); myColl.Add(2); myColl.Add(3); myColl.Add(4); myColl.Add(5); // Creating an integer array int[] myArr = new int[myColl.Count]; // Copying the entire Collection to a // compatible one-dimensional Array, // starting at the specified index // of the target array // This should raise "ArgumentOutOfRangeException" // as index is less than 0 myColl.CopyTo(myArr, -5); // Displaying the elements in myArr foreach(int i in myArr) { Console.WriteLine(i); } } } Runtime Error: Unhandled Exception: System.ArgumentOutOfRangeException: Value has to be >= 0. Parameter name: destinationIndex Note: This method uses Array.Copy to copy the elements. The elements are copied to the Array in the same order in which the enumerator iterates through the Collection<T>. This method is an O(n) operation, where n is Count. Reference: https://learn.microsoft.com/en-us/dotnet/api/system.collections.objectmodel.collection-1.copyto?view=netframework-4.7.2 Comment More infoAdvertise with us Next Article C# | Copying the elements of ArrayList to a new array S Sahil_Bansall Follow Improve Article Tags : C# CSharp-method CSharp-Collections.ObjectModel-Namespace CSharp-Collection-Class Similar Reads C# | Copying the Hashtable elements to an Array Instance Hashtable.CopyTo(Array, Int32) Method is used to copy the elements of a Hashtable to a one-dimensional Array instance at the specified index.Syntax: public virtual void CopyTo (Array array, int arrayIndex); Parameters: array : The one-dimensional Array that is the destination of the DictionaryEntry 3 min read C# | Copying the SortedList elements to an Array Object SortedList.CopyTo(Array, Int32) Method is used to copy SortedList elements to a one-dimensional Array object, starting at the specified index in the array. Syntax: public virtual void CopyTo (Array array, int arrayIndex); Parameters: array: It is the one-dimensional Array object that is the destinat 2 min read C# | Copying the elements of ArrayList to a new array ArrayList.ToArray Method is used to copy the elements of the ArrayList to a new array. This method contains two methods in its overload list as follows: ToArray()ToArray(Type)ToArray() This method is used to copy the elements of the ArrayList to a new Object array. The elements are copied using Arra 2 min read Copying the Queue elements to 1-D Array in C# Queue<T>.CopyTo(T[], Int32) Method is used to copy the Queue elements to an existing one-dimensional Array, starting at the specified array index. The elements are copied to the Array in the same order in which the enumerator iterates through the Queue and this method is an O(n) operation, whe 4 min read C# | Copy the elements of collection over a range of elements in ArrayList ArrayList.SetRange(Int32, ICollection) Method is used to copy the elements of a collection over a range of elements in the ArrayList. Syntax: public virtual void SetRange (int index, System.Collections.ICollection c); Parameters: index: It is a zero-based ArrayList index at which to start copying th 3 min read C# | Copying BitArray elements to an Array The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.CopyTo(Array, Int32) method is used to copy the ent 3 min read Like