More than 7,000 runners battled the hills, cold and even a bit of hail as they completed the gruelling 13 mile race.