Я считаю, что вы пытаетесь объединить обе коллекции данных.Запрос linq, который вы выполняете, возвращает правильные результаты, которые вы запрашиваете: для каждого элемента abcdata и для каждого элемента xyzdata возвращайте объект, который вы строите.Итак, если abcdata имеет 3 элемента, а xyzdata имеет 5 элементов, результат будет иметь 15 элементов.
Если вы хотите: для каждого элемента abcdata выберите элементы xyzdata с одинаковыми именами и объедините группы., что вам нужно, это Регистрация.
Что-то вроде
var result = from i1 in abcdata
join i2 in xyzdata on i1.Name equals i2.Name
select new
{
Name = i1.Name,
Group = i1.Group.ToString() + i2.Group.ToString()
};