I know I could use a for statement and achieve the same effect, but can I loop backwards through a foreach loop in C#?
for
foreach
No. ForEach just iterates through collection for each item and order depends whether it uses IEnumerable or GetEnumerator().