C# | Create a Queue from another collection Last Updated : 11 Jul, 2025 Comments Improve Suggest changes Like Article Like Report Queue represents a first-in, first out collection of object. It is used when you need a first-in, first-out access of items. When you add an item in the list, it is called enqueue, and when you remove an item, it is called deque. Queue.ToArray Method used to copy the Queue elements to a new array. Properties : Enqueue adds an element to the end of the Queue. Dequeue removes the oldest element from the start of the Queue. Peek returns the oldest element that is at the start of the Queue but does not remove it from the Queue. The capacity of a Queue is the number of elements the Queue can hold. As elements are added to a Queue, the capacity is automatically increased as required by reallocating the internal array. Queue accepts null as a valid value for reference types and allows duplicate elements. Syntax: public T[] ToArray (); Here T[] is a new array containing elements copied from the Queue. Below given are some examples to understand the implementation in a better way : Example 1: CSHARP // C# code to Create a Queue // from a collection using System; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Queue of strings Queue<string> myQueue1 = new Queue<string>(); // Inserting the elements into the Queue myQueue1.Enqueue("GeeksforGeeks"); myQueue1.Enqueue("is"); myQueue1.Enqueue("the"); myQueue1.Enqueue("best"); myQueue1.Enqueue("website"); // Displaying the count of elements // contained in the myQueue1 Console.Write("Total number of elements in the Queue 1 are : "); Console.WriteLine(myQueue1.Count); // Displaying the elements in Queue myQueue1 foreach(string str in myQueue1) { Console.WriteLine(str); } // Creating a Queue from a collection Queue<string> myQueue2 = new Queue<string>(myQueue1.ToArray()); // Displaying the count of elements // contained in the myQueue2 Console.Write("Total number of elements in the Queue 2 are : "); Console.WriteLine(myQueue2.Count); // Displaying the elements in Queue myQueue2 foreach(string str in myQueue2) { Console.WriteLine(str); } } } Output: Total number of elements in the Queue 1 are : 5 GeeksforGeeks is the best website Total number of elements in the Queue 2 are : 5 GeeksforGeeks is the best website Example 2: CSHARP // C# code to Create a Queue // from a collection using System; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Queue of Integers Queue<int> myQueue1 = new Queue<int>(); // Inserting the elements into the Queue myQueue1.Enqueue(5); myQueue1.Enqueue(10); myQueue1.Enqueue(15); myQueue1.Enqueue(20); myQueue1.Enqueue(25); // Displaying the count of elements // contained in the myQueue1 Console.Write("Total number of elements in the Queue 1 are : "); Console.WriteLine(myQueue1.Count); // Displaying the elements in Queue myQueue1 foreach(int i in myQueue1) { Console.WriteLine(i); } // Creating a Queue from a collection Queue<int> myQueue2 = new Queue<int>(myQueue1.ToArray()); // Displaying the count of elements // contained in the myQueue2 Console.Write("Total number of elements in the Queue 2 are : "); Console.WriteLine(myQueue2.Count); // Displaying the elements in Queue myQueue2 foreach(int i in myQueue2) { Console.WriteLine(i); } } } Output: Total number of elements in the Queue 1 are : 5 5 10 15 20 25 Total number of elements in the Queue 2 are : 5 5 10 15 20 25 Reference: https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.queue-1.toarray?view=netframework-4.7.2 Create Quiz Comment S Sahil_Bansall Follow 0 Improve S Sahil_Bansall Follow 0 Improve Article Tags : Misc C# CSharp-method CSharp-Generic-Queue CSharp-Collections-Namespace CSharp-Generic-Namespace +2 More Explore IntroductionC# Tutorial 2 min read Introduction to .NET Framework 6 min read C# .NET Framework (Basic Architecture and Component Stack) 6 min read C# Hello World 2 min read Common Language Runtime (CLR) in C# 4 min read FundamentalsC# Identifiers 2 min read Data Types in C# 6 min read C# Variables 4 min read C# Literals 5 min read Operators in C# 7 min read C# Keywords 5 min read Control StatementsC# Decision Making (if, if-else, if-else-if ladder, nested if, switch, nested switch) 5 min read C# Switch Statement 4 min read Loops in C# 4 min read C# Jump Statements (Break, Continue, Goto, Return and Throw) 4 min read OOP ConceptsClass and Objects in C# 4 min read Constructors in C# 5 min read C# Inheritance 3 min read Encapsulation in C# 2 min read C# Abstraction 4 min read MethodsMethods in C# 4 min read Method Overloading in C# 4 min read Method Parameters in C# 4 min read Method Overriding in C# 7 min read Anonymous Method in C# 2 min read ArraysArrays in C# 6 min read Jagged Arrays in C# 4 min read Array Class in C# 5 min read How to Sort an Array in C# | Array.Sort() Method Set - 1 8 min read How to find the rank of an array in C# 2 min read ArrayListArrayList in C# 6 min read ArrayList Class in C# 4 min read C# | Array vs ArrayList 2 min read StringStrings in C# 6 min read C# Verbatim String Literal - @ 5 min read C# String Class 9 min read C# StringBuilder 2 min read C# String vs StringBuilder 3 min read TupleC# Tuple 7 min read C# Tuple Class 3 min read C# ValueTuple 7 min read C# ValueTuple Struct 4 min read IndexersC# Indexers 5 min read C# Multidimensional Indexers 5 min read C# - Overloading of Indexers 3 min read Like