Does
foreach(T value in new List(oldList) )
is dangerous (costly) when oldList contains 1 millions of object T ?
More g
just like this
var itemsToBeRemoved = new List(); foreach (T item in myHugeList) { if (/**/) itemsToBeRemoved.Add(item); } myHugeList.RemoveRange(itemsToBeRemoved);