Location, location, location (small front negates large numbers), discipline and tactics won the day (again). In this battle the Romans were outnumbered by at least 10:1 and still chewed up the opposition.
The lesson of history is that trained heavy infantry, especially those fighting for hearth and home and country, will beat an untrained barbarian rabble almost every time.