With the list, you are taking advantage of a feature called "Collection initializers", you can read about it here:
https://learn.microsoft.com/en-us/dotnet/articles/csharp/programming-guide/classes-and-structs/object-and-collection-initializers
Basically, to work, it depends on the collection implementing the IEnumerable interface and having an "Add" method (which Queue does not have), or, there being a reachable extension method called "Add" (which you could implement yourself for Queue).
static class QueueExtensions
{
public static void Test()
{
// See that due to the extension method below, now queue can also take advantage of the collection initializer syntax.
var queue = new Queue<int> { 1, 2, 3, 5 };
}
public static void Add<T>(this Queue<T> queue, T element)
{
queue.Enqueue(element);
}
}