As I mentioned above, the best way to keep items matching a condition is
filter predicate xs filter predicate xs IEnumerable<T>.Where(Func<T, bool> predicate)
It's quite simple to use: var odd_numbers = numbers.Where( n => n%2 == 1 );