¿Cómo iterar sobre dos matrices a la vez?

Tengo dos matrices construidas al analizar un archivo de texto. El primero contiene los nombres de las columnas, el segundo contiene los valores de la fila actual. Necesito iterar sobre ambas listas a la vez para construir un mapa. En este momento tengo lo siguiente:

var currentValues = currentRow.Split(separatorChar);
var valueEnumerator = currentValues.GetEnumerator();

foreach (String column in columnList)
{
    valueEnumerator.MoveNext();
    valueMap.Add(column, (String)valueEnumerator.Current);
}

Esto funciona bien, pero no satisface mi sentido de la elegancia, y se vuelve realmente difícil si el número de matrices es mayor que dos (como tengo que hacer ocasionalmente). ¿Alguien tiene otro idioma más terser?

Respuestas a la pregunta(6)

Su respuesta a la pregunta