[ad_1]
You want to use Any for that since l_obja is not a list of the ids.
List<ClassA> l_obja = Obj1.exp.Values.Where(i => i.Id == mid).ToList();
List<ClassB> l_objb = Obj1.Pol.Values.Where(i => l_obja.Any(a => a.MGId == i.GId));
[ad_2]
solved LINQ with List