Seleccionar muchos es como una operación de unión cruzada en SQL donde toma el producto cruzado.
Por ejemplo si tenemos
Set A={a,b,c}
Set B={x,y}
Seleccionar muchos se puede utilizar para obtener el siguiente conjunto
{ (x,a) , (x,b) , (x,c) , (y,a) , (y,b) , (y,c) }
Tenga en cuenta que aquí tomamos todas las combinaciones posibles que se pueden hacer de los elementos del conjunto A y el conjunto B.
Aquí hay un ejemplo de LINQ que puedes probar
List<string> animals = new List<string>() { "cat", "dog", "donkey" };
List<int> number = new List<int>() { 10, 20 };
var mix = number.SelectMany(num => animals, (n, a) => new { n, a });
la mezcla tendrá los siguientes elementos en estructura plana como
{(10,cat), (10,dog), (10,donkey), (20,cat), (20,dog), (20,donkey)}