Если вы знаете, что ваш массив уже отсортирован по возрасту, то вы можете использовать:
Queue<YourType> q = new Queue<YourType>(yourSortedArray);
Если массив предварительно не отсортирован, вы можете отсортировать его с помощью LINQ:
Queue<YourType> q =
new Queue<YourType>(yourUnsortedArray.OrderBy(x => x.YourDateProperty));
Тогда вы можете просто позвонить q.Dequeue
, чтобы получить предметы в порядке от старейшего до нового.