Posible iterar hacia atrás a través de un foreach?

Sé que podría usar un enunciado for y lograr el mismo efecto, pero ¿puedo hacer un ciclo hacia atrás a través de un bucle foreach en C #?

Al trabajar con una lista (indexación directa), no puede hacerlo tan eficientemente como usar un bucle for .

Editar: lo que generalmente significa que, cuando puede usar un ciclo for , es probable que sea el método correcto para esta tarea. Además, por mucho que foreach se implemente en orden, el constructo en sí está diseñado para express bucles que son independientes de los índices de elementos y el orden de iteración, lo cual es particularmente importante en la progtwigción paralela . En mi opinión, la iteración basada en el orden no debe usar foreach para el bucle.