compruebe si una Lista contiene un elemento en otra Lista usando LINQ

¿Cómo verifico si una Lista contiene un elemento que existe en otra Lista usando LINQ en C #? No quiero usar un bucle for / while.

Entonces, si la Lista 1 tiene A, B, C y la Lista 2 tiene B, 1, 2, entonces devolvería verdadero.

Prueba esto:

List a = ... List b = ... var inComon = a.Intersect(b).Any(); 

Utilice Enumerable. Cualquier método :

 List l1 = new List { "1", "2" }; List l2 = new List { "1", "3" }; var result = l2.Any(s => l1.Contains(s)); 

Yo diría que el método Intersect (ver respuesta por dasblinkenlight ) + Any debe funcionar mejor que Contains + Any . Definitivamente es mejor usar Any than Count .