Search code examples
c#listset-difference

Difference of two lists C#


I have two lists of strings both of which are ~300,000 lines. List 1 has a few lines more than List 2. What I'm trying to do is find the strings that in List 1 but not in List 2.

Considering how many strings I have to compare, is Except() good enough or is there something better (faster)?


Solution

  • Internally the enumerable Except extension method uses Set<T> to perform the computation. It's going to be as least as fast as any other method.

    Go with list1.Except(list2).

    It'll give you the best performance and the simplest code.