La sfârșitul Primului Război Punic, în B.C. 241, Cartagine a fost de acord să aducă un tribut abrupt Romei, dar epuizarea cofrelor nu a fost suficientă pentru a devasta națiunea de comercianți și comercianți din Africa de Nord: Roma și Cartagine vor lupta din nou în curând.
În perioada intermediară dintre Primul și cel de-Al Doilea Război Punic (cunoscut și sub numele de Războiul Hanibalic), eroul fenician și liderul militar Hamilcar Barca au cucerit o mare parte din Spania, în timp ce Roma a luat Corsica. Hamilcar tânjea să se răzbune împotriva romanilor pentru înfrângerea din Războiul Punic I. Dându-și seama că nu trebuia, a învățat ura Romei fiului său Anibal.
Al doilea război punic a izbucnit în B.C. 218 când Hannibal a preluat controlul asupra orașului grec și aliatului roman Saguntum (în Spania). Roma a crezut că va fi ușor să învingă Hannibal, dar Hannibal era plin de surprize, inclusiv modul său de a intra în peninsula italică din Spania. Părăsind 20 de mii de trupe cu Hasdrubal, fratele său, Hannibal a mers mai departe spre nord pe râul Rhône decât se așteptau romanii și a traversat râul cu elefanții săi pe dispozitivele de flotație. Nu a avut la fel de multă forță de muncă ca romanii, dar a contat pe sprijinul și alianța triburilor italiene nemulțumite de Roma.
Hannibal a ajuns pe Valea Po cu mai puțin de jumătate din oamenii săi. El a întâlnit, de asemenea, o rezistență neașteptată din partea triburilor locale, deși a reușit să recruteze Galii. Asta însemna că avea 30.000 de trupe când a întâlnit romanii în luptă.
Hannibal a câștigat bătălii în Trebia și la Lacul Trasimene și apoi a continuat prin Munții Apenini care alerga prin mare parte din Italia ca o coloană vertebrală. Cu trupele din Galia și Spania de partea sa, Hannibal a câștigat o altă luptă, la Cannae, împotriva lui Lucius Aemilius. La bătălia de la Cannae, romanii au pierdut mii de trupe, inclusiv liderul lor. Istoricul Polybius descrie ambele părți drept galante. El scrie despre pierderile substanțiale:
Polybius, Bătălia de la Cannae
"Din infanterie, 10 mii au fost luați prizonieri într-o luptă echitabilă, dar nu au fost efectiv angajați în luptă: dintre cei care s-au angajat de fapt doar aproximativ trei mii, probabil au scăpat în orașele raionului din jur; toate celelalte au murit nobil, la număr de 70 de mii, cartaginezii fiind cu această ocazie, ca și în cele anterioare, îndatorați în principal pentru victoria lor față de superioritatea lor în cavalerie: o lecție a posterității că în războiul propriu-zis este mai bine să ai jumătate din numărul de infanterie și superioritatea. în cavalerie, decât să-ți angajezi dușmanul cu o egalitate în ambele. De partea Hanibalului au căzut patru mii de celți, 15 sute de iberi și libieni și aproximativ două sute de cai ".
Pe lângă spargerea ruralului (pe care ambele părți au făcut-o în efortul de a-l înfometa pe inamic), Hannibal a terorizat orașele din sudul Italiei în efortul de a câștiga aliați. Cronologic, primul război macedonean al Romei se încadrează aici (215-205), când Hanibal s-a aliat cu Filip V al Macedoniei.
Următorul general care s-a confruntat cu Hannibal a avut mai mult succes - adică nu a existat o victorie decisivă. Cu toate acestea, Senatul din Cartagine a refuzat să trimită suficiente trupe pentru ca Hannibal să câștige. Așa că Hannibal s-a întors către fratele său Hasdrubal pentru ajutor. Din păcate, pentru Hannibal, Hasdrubal a fost ucis pe ruta să i se alăture, marcând prima victorie romană decisivă în cel de-al doilea război punic. Peste 10.000 de cartaginezi au murit la bătălia de la Metaurus din B.C. 207.
Între timp, Scipio a invadat Africa de Nord. Senatul cartaginez a răspuns reamintindu-l pe Hannibal.
Romanii de sub Scipio au luptat împotriva fenicienilor sub Hanibal la Zama. Hannibal, care nu mai avea o cavalerie adecvată, nu a putut să urmeze tactica preferată. În schimb, Scipio i-a călcat pe cartaginezi folosind aceeași strategie pe care o folosise Hannibal la Cannae.
Hannibal a pus capăt celui de-al doilea război punic. Condițiile stricte de predare ale lui Scipio erau următoarele:
Termenii includeau o prevedere suplimentară dificilă: