Efficient collection for inserts and removals at the beginning
What collection would you recommend for a code that frequently inserts and removes objects at the beginning of the collection only.

Here is some code to illustrate my requirements

    while (collection.Count != 0)
    {
       object obj = collection[0];
       collection.RemoveAt(0);
    
       ...

       if (somethingWith(obj))
           collection.Insert(0, anotherObj);
    
       ...  
    }

There is no inserts or removals at positions other than 0. Collection is not sorted.

What would you recommend?
Efficient collection for inserts and removals at the beginning
===

What collection would you recommend for a code that frequently inserts and removes objects at the beginning of the collection only.

Here is some code to illustrate my requirements

    while (collection.Count != 0)
    {
       object obj = collection[0];
       collection.RemoveAt(0);
    
       ...

       if (somethingWith(obj))
           collection.Insert(0, anotherObj);
    
       ...  
    }

There is no inserts or removals at positions other than 0. Collection is not sorted.

What would you recommend?