PLEnlist

Hannibal vs Scipio

Explainer · Ancient warfare · ~5 min read · Updated October 2026

Roman and Carthaginian lines meeting at the Battle of Zama

Painting after Giulio Romano, 16th century. Public domain.

Quick answer

Who was the better general, Hannibal or Scipio?

Hannibal is usually rated the greater pure tactician, but Scipio won the war. Hannibal's masterpiece was Cannae in 216 BC, where his double envelopment destroyed a far larger Roman army. At Zama in 202 BC, their only meeting as opposing commanders, Scipio beat Hannibal and ended the Second Punic War.1

The Second Punic War produced two of history's greatest commanders, and one of them learned his trade from the other. Hannibal Barca of Carthage, son of Hamilcar Barca, humiliated Rome again and again; Scipio Africanus was the Roman who learned from those defeats and turned them back on him. They met as opposing commanders only once, at Zama, and that battle decided the war.2

HannibalScipio Africanus
Livedc. 247 to c. 183 BCc. 236 to c. 183 BC3
RoleCarthaginian generalRoman general
Greatest victoryCannae, 216 BCZama, 202 BC
Famous forCrossing the Alps and shattering Rome's armies in ItalyDefeating Hannibal and winning the Second Punic War
Head to headLost only one great land battle, when they finally met at ZamaBeat Hannibal at Zama, the battle that counted
UndoingRecalled to defend Carthage, lost at Zama, later exiledPolitical enemies at home; died in self-imposed exile4
Lasting legacyThe model of tactical genius; Cannae is still taughtEnded Hannibal's war and left Rome dominant in the western Mediterranean

Key points

Hannibal: master of the battlefield

Hannibal crossed the Alps in 218 BC and spent years in Italy without losing a major battle. His masterpiece was Cannae in 216 BC, where he let his center give ground, drew the Romans in, and closed his wings around them in a double envelopment that destroyed a far larger army. It is still studied as the perfect battle of encirclement. Yet Hannibal could never take Rome itself, and time and Roman manpower slowly turned against him.9

Renaissance fresco of Hannibal riding an elephant at the head of his army
Hannibal in Italy, fresco attributed to Jacopo Ripanda, early 16th century, in the Palazzo dei Conservatori (Capitoline Museums, Rome). Public domain

Scipio: the pupil who surpassed the master

Scipio survived Cannae as a young officer and never forgot it. Rather than meet Hannibal head-on in Italy, he took the war where Carthage was weak, conquering its base in Spain, then landing in Africa to threaten Carthage directly. That forced Hannibal to abandon Italy and come home. Scipio had absorbed Hannibal's own lessons about cavalry and maneuver, and he brought them to their final meeting.10

Painting of Scipio enthroned returning a captive woman to her betrothed
The Continence of Scipio: after taking New Carthage in Spain, Scipio returns a captive young woman to her betrothed. Copy by John Smibert, about 1726, after Nicolas Poussin. Public domain

Hannibal lost only one great land battle, and that one ended the war.11

Zama: the reckoning

At Zama in 202 BC the two finally met. Scipio blunted Hannibal's war elephants by opening lanes in his ranks for them to pass through harmlessly, and his stronger cavalry, many of them Numidian allies, wheeled back to strike the Carthaginian rear, just as Hannibal's horsemen had done at Cannae. Hannibal was beaten at his own game. Read the full lives of Hannibal and Scipio Africanus.12

Black and white reproduction of Henri-Paul Motte's painting of Carthaginian war elephants charging into Roman soldiers at Zama
Carthaginian war elephants engage Roman infantry at Zama, an image by Henri-Paul Motte. Public domain

Frequently asked questions

Who won the Battle of Zama?

Scipio Africanus and Rome won Zama in 202 BC, defeating Hannibal and ending the Second Punic War.

Did Hannibal and Scipio fight before Zama?

Not as opposing commanders. The young Scipio fought against Hannibal's army at the Ticinus (218 BC), where he saved his father, and at Cannae (216 BC), but the two met as generals only once, at Zama.

Who was the better general, Hannibal or Scipio?

Hannibal is usually rated the greater pure tactician, above all for Cannae, but Scipio won the war by beating him at Zama, so the debate has no settled answer.

How did Scipio beat Hannibal at Zama?

He let Hannibal's elephants charge harmlessly through lanes in his lines, then used his stronger cavalry to hit the Carthaginian army from behind.

Notes

A number in the text points to a note; each note names the works that paragraph draws on, listed in full under Sources.

  1. World History Encyclopedia, “Hannibal”; World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  2. World History Encyclopedia, “Hannibal”; World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  3. World History Encyclopedia, “Hannibal”; World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  4. World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  5. World History Encyclopedia, “Hannibal”. ↩
  6. World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  7. World History Encyclopedia, “Scipio Africanus the Elder”; World History Encyclopedia, “Hannibal”. ↩
  8. H. H. Scullard, Scipio Africanus. ↩
  9. Adrian Goldsworthy, The Punic Wars; Polybius, Histories. ↩
  10. World History Encyclopedia, “Hannibal”; World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  11. World History Encyclopedia, “Scipio Africanus the Elder”. ↩
  12. Polybius, Histories. ↩

Sources

Battle honors of your homeland

The turning points of history

Marathon, Gaugamela, Cannae, Constantinople, Waterloo, Stalingrad: the days the world changed course.

Based on your country, which we do not store · why? ·

Relive the battles

Echoes of Battle brings 40 of history's greatest battles to life, scene by scene, with a real-time tactical mode in the works. Enlist below and we will send word to your inbox the day it launches.