using System.Collections.Generic;
public static void Main()
List<int> listA = new List<int>{1, 2, 2, 2, 3, 3, 4, 5, 6, 7, 7, 7};
List<int> listB = new List<int>{2, 6, 8, 9, 10};
var setB = listB.ToHashSet();
var aMinusB = listA.Where(item => !setB.Contains(item)).ToList();
Console.WriteLine(string.Join(",", aMinusB));