https://blog.stackademic.com/using-linqs-except-operator-in-c-finding-differences-between-two-sets-ac194d47f091