Why didn't Hannibal take Rome after the Battle of Cannae?

by aldiboronti

In the wake of that battle the Romans were completely demoralized having lost 50,000 men in the battle (according to Plutarch) including one of the consuls. The city of Rome was almost defenseless, its population in shock. Hannibal's own generals, including Barca, urged him to march on Rome instantly on the tail of what was left of the defeated Roman soldiery and seize the city. Hannibal made no decision at that time and seemed to prevaricate until the moment was lost. If he had taken Rome he would have been master of Italy. So do we know why he didn't?

awiseoldturtle

Historians argue over this point. The long and short of it is: even with his smashing victory at Cannae, there was no guarantee that a siege would be successful.

Rome's walls were still a formidable obstacle, even if they were manned by citizens instead of legionaries, they could still have put up a real fight. Hannibal also didn't have a large army, surrounding the city and laying siege could have just as easily resulted in his army falling victim to attrition and ending his campaign in humiliating disaster.

Now of course some people say that even with all the senates brave talk of never surrendering, they would have changed their tune quickly if Hannibal ever appeared outside their gates, and they very well may have, but it's impossible for any of us to know how that would have turned out because Hannibal never came close to Rome.

So when it comes down to it, going after Rome directly was a risk, and one that Hannibal seemed loathe to take without the odds being on his side. He was after all, a tactical genius, known to be too smart to walk into traps set by his enemies, and only engaging when the battle would be on his terms. Laying siege to Rome would not be on his terms.

Since his strategy up to this point has been to peel away Rome's allies, and his end goal was to dial the clock back to before the first Punic war when Rome was just a regional power, and not outright burn it to the ground, it makes sense that he would continue to pursue this strategy in the wake of his greatest success. At this point in the war the strategy wasn't working out as planned, Hannibal had expected all the other Italians to flock to his banner, eager to free themselves from under Rome, but so far few had. Rome was very powerful, had a system many other Italians admired, and was known to be vindictive, so many stuck by Rome, confident that they would outlast and eventually beat any invader just like they had done before. (See gaulic invaders and Pyrrhus)

After Cannae, The stratagem actually started working more, as Rome had been dealt a long line of embarrassing defeats. The city of Capua flipped, and for a while it looked like Hannibal would eventually turn Italy against Rome. Only later did it become clear that Hannibal had only given Rome time to build its strength back up when he decided not to march on the city.

In conclusion, he probably should have marched on the city, but it went against his instincts and his larger plan. He might have won, but he might not have. He thought he could turn Italy against them and keep Rome down forever, but that's not how it ended. Rome was able to keep Hannibal at bay with multiple smaller armies, retaking land that Hannibal had turned against Rome and dogging his army everywhere they went. Hannibal was too smart to walk into a battle he would lose, but he couldn't be everywhere at once, so wherever he wasn't the Romans came in force. Keeping Italy stable and on their side for years.