var lst1 = new List<string>(){"1","2","3"};
var lst2 = new List<string>(){"4","2","3"};</string></string>
var rez = lst1.Intersect(lst2); // here the result is 2 and 3
var rez = lst1.Method(lst2)
var lst1 = new List<string>(){"1", "2", "3"};
var lst2 = new List<string>(){"4", "2", "3"};
var intersect = new List<string>(lst1.Intersect(lst2));
var res = new Dictionary<string, int32>();
intersect.ForEach(el => res.Add(el,0));
foreach (var el in lst1)
if (res.ContainsKey(el))
res[el]++;
foreach (var el in lst2)
if (res.ContainsKey(el))
res[el]++;
foreach (var el in res)
Console.WriteLine("{0}: {1} time(s)", el.Key, el.Value);</string></string></string></string>
Find more questions by tags C#