Удалить элементы из одного списка <T>, которые находятся в другом
У меня есть два списка
List<T> list1 = new List<T>();
List<T> list2 = new List<T>();
Я хочу удалить все элементы из list1, которые также существуют в list2. Конечно, я могу пройтись по первому циклу, ища каждый элемент в list2, но я ищу элегантное решение.
Спасибо!