During the Punic Wars, Rome and her allies lost tens of thousands of troops in various battles but were always able to field yet more troops and fight on. What happened so that by 378, the Romans had such a hard time recovering from a single battle even though the empire was so much bigger?

To put it briefly, disease leading to a decreased population, economic distress, rebellions, civil wars, misleading number of roman troops, and the actual size of the empire itself are all theories for Rome’s decline and difficulty in fighting outside threats. Due to the size and complexity of the answer required to fully explain this, I would like to focus on the military aspect. By the time of Augustus, Roman expansion of territory exponentially decreased. As a result, Roman troops and legions became increasingly tied to the frontier areas. By the 2nd century A.D., temporary frontier forts built by the legions to provide shelter in winter became permanent settlements representative of small cities. As a result, troops became increasingly tied to one particular region of the empire. By the 4rd century A.D., new reforms took place trying to resolve this problem, splitting the army into 2 major segments, the frontier troops called the limitanei and the mobile army reserve called the comitantenses. The limitnanei main job was protecting the frontier borders from minor raids by barbarians numbering only a few hundred in most instances. Unlike the limitanei, the comintansenses were designated as the mobile reserve, and designated to move any threatened area and remove the danger. Unfortunately, the most important part of this reform, the comitansenses, failed in many respects, mainly the comitansenses became increasingly tied to a certain region or province, negating the purpose it was created. Having the Roman troops isolated and tied to specific areas in the empire caused great harm in many respects, most importantly, it caused civil war. Roman troop’s identity became connected to the local regions and its commanders. When one emperor died or was seen as illegitimate, a commander with a significant army could declare himself emperor. In other instances, the local military forces themselves would declare a new emperor. This caused huge succession problems and led to an extremely dangerous pattern of civil war. One saw many examples of this in the 3rd and 4rth century, the most famous example being Constantine whose Gaul based army militarily defeated the armies of the East in order to proclaim him emperor. The civil wars played a huge part in weakening the Roman military, making it less effective in defending the empire from outside invasions.
Economic distress, changes, and population decrease also weakened the Roman military. For a large part of their history, the legions built and supplied their own weaponry and armor from military foundries. Essentially, if there was a need for equipment, the legion could supply that need themselves, effectively making them self-sufficient in that respect. By the late Roman Empire, weapons and armor manufacturing had been given to nearby cities and professionals who built the equipment and supplied the local Roman troops. This could be a huge liability especially when disease, war, or political corruption was in play. Consequently, local roman troops could suffer from lack of supplies not representative of the legions from older eras. Local political corruption is key here and leads me to my next point, the actual size of the Roman army and its potential for being a paper tiger.
It is important to preface this and further arguments with the fact that the late Roman Empire’s military was still the most effective, disciplined, and best equipped forces in the Western World, yet it is also important to note several weaknesses that had developed, for instance, its actual size compared to its paper size. Some scholars estimate the Late Roman Empire fielded close to 700,000 troops! This number is nearly twice the size of the Augustus era troop level of around 400,000. However, many of these troop numbers were most certainly made faked. It was common to see a legion on paper fielding thousands of men, but in reality, its real numbers were much smaller. One reason for this was the army behavior at the time. Due to the need to field mobile armies to fight off multiple threats on the borders, quick reaction forces would be scratched together from multiple frontier garrisons and reserves. These forces were called vexillations. Eventually over time, these vexillations became defacto their own legions. As a result, one saw a drastic explosion in the number of legions, but saw little quantitative increase in manpower. Essentially, the legions split into even smaller legions. Another reason for inaccurate troop numbers was political corruption. This cannot be emphasized enough. In order to receive more money for their coffers, local officials would inflate the number of troops in their vicinity, leading to the false conclusions on the number of military men. A third reason for poor troop count is the fact of military attrition itself. Men would be killed in border skirmishes or minor campaigns while others would die every year from disease. Unlike older days where it was easier to recruit, the Roman Empire suffered from many plagues, diminishing the population and making it difficult to replenish the military. These three factors help explain the reason for lower than expected numbers of Roman troops. Although a minor reason for failure to fight outside invasion, one could point to the decreasing quality of the Roman army. Some of the evidence on the lack of quality of the Roman military was its lack of discipline in battle compared to its earlier days. In the time of Julius Caesar, Augustus, and even pre-Marian reform armies, the legions would advance slowly and silently over the field and in the final few meters charge and yell. This action took an extremely large amount of discipline and training. In the final decades of the Western Roman Empire, the troops did the opposite; charging and howling similarly to the barbarians they were fighting. One of the biggest factors for this change in tactic was the inevitable influence of incorporating larger numbers of barbarians into the military. It is also important to note the Roman troops had been configured and used to fighting small border clashes. As a result, Roman vexillations or legions had rarely fought together in pitch battle or even had the opportunity to train together. This decrease in the quality of the Roman troops leads me my final point. The Roman Army was partly incapable of fighting off the barbarian invasions due to its unwillingness to fight in open battle. This was common idea in ancient warfare. Much of the campaigning would be hallmarked mainly by maneuver and skirmishing with few battles. In many instances, only one large battle would be fought. Add this to the difficulty the Roman army faced in the 3rd and 4th century, mainly smaller population and replenishment problems it could and would experience if it took many casualties in battle. Thus, the Roman army or armies were even less willing to fight pitch battle than its Punic and Augustan counterparts.
In conclusion, the Roman army was plagued by civil war, smaller population, corruption, lack of discipline, change of tactics, and local identity, making it extremely difficult in fighting foreign invasion.

/r/AskHistorians Thread