No necesita crear colección, usar una int
variable que es 0 y aumentarlo en un foreach
. Luego tienes el índice y el elemento.
int index = 0;
foreach(var x in result)
{
// x is the element and index the current index
Console.WriteLine("Val:{0} Index:{1}", x.val, index);
index ++;
}