var lists = new List<List<string>>();
var a = new List<string> {"A", "B", "C", "D"};
var b = new List<string> {"A", "B", "C", "D" };
var c = new List<string> {"A", "Y", "C", "D" };
var d = new List<string> {"A", "B", "Z", "D" };
lists.Add(a);
lists.Add(b);
lists.Add(c);
lists.Add(d);
I need to get a list of value that is true for all lists (in this case it would be return {"A","D"})