Druhá punská válka byla vybojována mezi Římany a Kartaginci v letech 218 až 201 př. n. l. Kartaginský vojevůdce Hannibal z rodu Barkasů v ní nejprve Římu uštědřil řadu porážek v takticky geniálně vedených bitvách, které jsou dodnes uváděny ve vojenských učebnicích. Římané následně přešli do několik let trvající opotřebovávací války, postupně zlikvidovali nebo neutralizovali spojence a hlavní kolonie Kartága a nakonec pod vedením Publia Cornelia Scipiona Africana zvítězili v bitvě u Zamy. Tato válka definitivně rozhodla boj obou měst o dominanci ve Středomoří ve prospěch Říma.
Z důvodu úplného zničení Kartága ve třetí punské válce v roce 146 př. n. l. a dlouhodobé hegemonie římské říše ve Středomoří se nedochovaly žádné historické prameny, které by popisovaly průběh války a její pozadí z kartaginského nebo skutečně neutrálního pohledu. Historikové se proto mohou opírat pouze o díla řeckých a římských antických autorů – především Polybia a Livia – a musejí je tudíž interpretovat velmi opatrně. Velké porážky, které Římané utrpěli během této války, byly jimi vždy vykládány tak, aby nijak nezpochybňovaly politické a sociální uspořádání římského státu. I při popisování katastrofálních proher na bitevním poli musela být velikost Říma vždy zachována tím, že byl nalezen určitý obětní beránek, jemuž byla vina za daný neúspěch připsána. Obzvláště to platí pro ničivou římskou porážku v bitvě u Kann.
Vypuknutí války
Po skončení první punské války muselo Kartágo odstoupit Římu své pozice na Sicílii a později během žoldnéřské války také na Sardinii a Korsice. Aby si Punové vynahradili tyto územní ztráty, rozšířili svou moc na Pyrenejském poloostrově. Při podrobení této země si obzvlášť energicky počínal kartaginský rod Barkasů: Hamilkar Barkas, jeho zeť Hasdrubal Sličný a Hamilkarův syn Hannibal. Především Hasdrubal byl tím, kdo zde vytvořil vlastní mocenskou základnu, někdy také nazývanou „říše Barků'“. Diplomatickou nebo vojenskou cestou si podrobil mnohé zdejší iberské kmeny. V roce 227 př. n. l. založil město Carthago Nova (Nové Kartágo), které fungovalo jako centrum kartaginského pronikání do Hispánie.
Kartágo tak díky Barkasům získalo v Hispánii novou provincii a tím i zdroje k odvetné válce proti Římu. V roce 226 př. n. l. uzavřel Hasdrubal s Římany smlouvu, ve které byla řeka Ebro na severovýchodě země stanovena za hranici kartaginské a římské sféry vlivu v Hispánii. Když byl Hasdrubal o pět let později zavražděn, stal se jeho nástupcem pětadvacetiletý Hannibal Barkas. Ten se brzy projevil jako velmi schopný vojevůdce. Po potlačení povstání iberských kmenů, které vypuklo po Hasdrubalově smrti, napadl pod římskou ochranou stojící řeckou kolonii jménem Saguntum (Zakantha). Po osmiměsíčním obléhání ji v roce 219 př. n. l. dobyl, čímž vyprovokoval římský senát k vyslání delegace do Kartága, jež žádala Hannibalovo vydání, neboť v tomto aktu viděli Římané porušení dohody s Hasdrubalem (ačkoliv Saguntum leželo jižně od řeky Ebro v kartaginské sféře). Kartaginci tento požadavek odmítli, načež následovalo římské vyhlášení války.
Když římský senát učinil toto závažné rozhodnutí, byli si senátoři jistí kartaginskou porážkou i přesto, že kartaginská armáda byla takřka stejně silná jako římská – domnívali se totiž, že jim jejich drtivá námořní převaha poskytne rozhodující výhodu. Hannibal si byl vědom toho, že Římané mohou napadat a ničit jednotlivé kusy kartaginské říše odděleně, aniž by on mohl mezi nimi dostatečně efektivně přesouvat vojska, načež se hrozícím vpádům do Afriky a Kartága rozhodl předejít vlastním tažením do Itálie, uskutečněným vnitrozemím a završeným přechodem Alp, čímž hodlal Římany překvapit.
Překročení Alp vpravo|300px|náhled|Trasa Hannibalovy invaze do Itálie V dubnu 218 př. n. l. začalo tažení proti Římu, kterého se mělo na kartaginské straně zúčastnit více než 100 000 mužů. Přechod přes Pyreneje byl namáhavý a byl doprovázen boji s místními domorodými kmeny. Kelty v jižní Galii se Hannibalovi podařilo přesvědčit o tom, že není jejich nepřítelem, přesto se mu jeden kmen postavil do cesty, když se pokoušel překročit přes řeku Rhodanus. Poté, co zdolal tuto vodní překážku i Galy stojící za ní, se konečně vydal vstříc Alpám. Disponoval nyní celkem 38 000 muži a 37 válečnými slony. Velký úbytek způsobilo několik faktorů: část vojáků byla zanechána na cestě, aby zde vytvořila a udržovala opěrné body, část dezertovala a část podlehla nemocem či byla zabita v bitvách.
Mezitím konzul Publius Cornelius Scipio, který směřoval nejprve do Hispánie, spěchal k Rhodanu, aby tu zadržel Hannibala, avšak dorazil příliš pozdě. S větší částí svého vojska se následně přeplavil do údolí řeky Pádu, kde vyčkával příchodu Kartaginců. Zároveň vyslal svého bratra Gnaea Cornelia Scipiona s menší částí vojska do Hispánie.
Překročení Alp způsobilo Hannibalovu vojsku značné ztráty. Vojáci trpěli hladem a zimou (tažení probíhalo již na konci podzimu), navíc museli odrážet neustálé útoky dotírajících keltských horských kmenů. Po patnácti dnech dosáhl Hannibal konečně údolí řeky Pádu. Zkonsolidoval své prořídlé síly (zbylo mu jen 26 000 mužů) a dobyl dnešní Turín. Místní Keltové teprve nedávno podrobení Římany využili Hannibalova příchodu k povstání. Mnozí z nich se pak připojili k Hannibalovu vojsku.
Jakkoliv šlo o neuvěřitelný podnik, celkově lze přechod Alp zhodnotit různě: buďto jako geniální strategický tah, který přinesl Hannibalovi plody v podobě snadných vítězství, nebo jako šílený hazard, při němž Hannibal ztratil obrovské množství vojáků a vycvičených válečných slonů. Existují názory, že ani kdyby Hannibal zaútočil přes opevněné pohraničí, neměl by tak strašlivé ztráty, jaké utrpěl při přechodu Alp.
Hannibalova vítězství náhled|vpravo|250px|Hannibal překračuje Alpy K prvnímu většímu střetu mezi Římany a Kartaginci došlo v listopadu roku 218 př. n. l. v bitvě u řeky Ticino. Ačkoliv boj vedly převážně jízdní oddíly a ztráty na obou stranách byly jen nepatrné, přesto se jasně projevila převaha Hannibalových zkušených numidských jezdců nad římskou jízdou. Sám těžce zraněný Scipio jen stěží unikl z bitvy. Římané byli poraženi a Scipionovi se jen s velkým vypětím sil podařilo v pořádku ustoupit za řeku Pád. Zatím z jihu dorazil druhý konzul Tiberius Sempronius Longus. Spojil své vojsko se zbytky Scipionova a vydal se proti Kartagincům. V bitvě u řeky Trebie se ale Hannibalovi podařilo vylákat římské vojsko za řeku, zde je obklíčit a zcela zničit. Kartaginci přesvědčivě zvítězili, naproti tomu Římané utrpěli těžké ztráty (měli kolem 10 000 padlých).
200px|vlevo|náhled|Hannibalova nejdůležitější vítězství v Itálii: (1) Bitva u Trebie (2) Bitva u Trasimenského jezera (3) Bitva u Kann Poté, co přezimoval v Bologni, vydal se Hannibal v roce 217 př. n. l. přes Apeniny na jih do Itálie. Současně se četnými sliby snažil získat na svou stranu italické kmeny. U Trasimenského jezera narazil na postupující římské legionáře pod velením konzula Gaia Flaminia a přichystal jim zde dokonalou léčku. Zatímco Římané postupovali po cestě podél jezera, Kartaginci přehradili cestu vpřed i vzad a zároveň se spustili z kopců nad jezerem. Římané se tak ocitli v obklíčení a 15 000 jich padlo včetně samotného konzula. Mnoho z Římanů rovněž upadlo do zajetí. Italské spojence nechal Hannibal propustit, aniž by požadoval výkupné, neboť je tak svou mírností chtěl přimět k odpadnutí od Římanů. Ti vyslali proti Hannibalovi další oddíly, které však byly taktéž poraženy. Dva tisíce legionářů padlo a další dva tisíce legionářů bylo zajato.
Pod dojmem těchto porážek se římský senát rozhodl zvolit diktátora, který by Hannibala konečně zastavil. Zvolen byl Fabius Maximus, který okamžitě vyrazil se dvěma legiemi. Přímému střetu s Hannibalem se však vyhýbal. Místo toho se snažil vyčerpat kartaginské vojsko drobnými nájezdy a útoky na jeho spojence. Takový postup byl však záhy vystaven silné kritice z řad jeho spoluobčanů, kteří chtěli válku s Hannibalem rychle a rázně ukončit, což diktátorovi vyneslo přezdívku Cunctator (česky Váhavec). Hannibal táhl dále na jih, obešel Řím a dorazil do Kampánie, kde chtěl u řeky Volturno rozbít zimní tábor. Maximus se zde pokusil vnutit svému nepříteli bitvu, avšak Hannibalovi se podařilo díky lsti uniknout a odtáhnout dále k městu Gerunium, ve kterém nakonec přezimoval. Římanům se nicméně podařilo dosáhnout drobného vítězství, když velitel jízdy Marcus Minutius Rufus úspěšně napadl punský předvoj.
Lidové shromáždění v Římě na to zvolilo Rufa druhým diktátorem. Římané tak nyní měli dva diktátory, což bylo v rozporu s ústavou. Navíc tato volba zvýšila již tak existující napětí mezi oběma veliteli. Přesto, když Hannibal vytáhl ze svého tábora a napadl Rufovo vojsko tak, že mu hrozilo zničení, Maximus nehleděl na vzájemné rozpory a přispěchal Rufovi ihned na pomoc. Hannibal, který se nyní nehodlal utkat s celou římskou armádou, se proto vrátil zpět do svého ležení. Římané se následně omezili jen na izolované útoky proti Punům.
Bitva u Kann
V roce 216 př. n. l. chtěl Hannibal přinutit Římany k rozhodné bitvě a za tímto účelem zaútočil na místo jménem Kanny. Římané shromáždili mohutnou armádu čítající celkem 16 římských a spojeneckých legií, v jejímž čele stáli oba nově zvolení konzulové Lucius Aemilius Paullus a Gaius Terentius Varro. Převaha byla jednoznačně na římské straně, neboť Římané disponovali celkem 80 000 pěšáky a 6000 jezdci. Naproti tomu Hannibalovo vojsko se skládalo jen z asi 40 000 pěšáků a 10 000 jezdců. Vážnou překážku pro římské vojsko však představovala rozdílná taktika obou konzulů: Zatímco Paullus radil k opatrnému postupu, Varro vybízel k bitvě.
vpravo|náhled|300px|Obklíčení římské armády v bitvě u Kann. 2. srpna roku 216 př. n. l. došlo k bitvě u Kann, která je dodnes součástí prakticky všech učebnic týkajících se vojenské taktiky. Římané plánovali klasický frontální útok na střed kartaginské sestavy, čehož se Hannibal rozhodl využít a použil zde v té době unikátní obkličovací taktiku. Svým vojákům ve střední části linie nařídil Hannibal pomalu ustupovat před římskými legionáři, zároveň ale nechal posílit křídla. Svému jezdectvu přikázal zaútočit na římskou jízdu, přemoci jí a následně vpadnout legionářům do zad. Tak se také stalo. Římané, kteří postupovali kupředu zdánlivě hroutícím se středem kartaginských linií, se tak probíjeli do pasti, neboť kartaginská křídla zůstala neochvějně stát na svých místech a posléze začala zatlačovat a obchvacovat křídla nepřítele. Vítězná kartaginská jízda pak již jen dokončila obklíčení. Římané sevření na úzkém prostoru se nebyli schopni rozvinout a využít tak svoji početní převahu a byli naprosto rozdrceni. Současníci podávají zprávy o téměř 70 000 padlých legionářích, prakticky celé armádě. V boji zahynul také konzul Paullus.
Hannibal však nyní učinil závažnou chybu, když odmítl využít tohoto svého velkolepého vítězství k tomu, aby vytáhl na Řím a oblehl jej. Zřejmě se domníval, že moc Říma je už nadobro zlomena. Jeho armáda utrpěla v bitvě také značné ztráty a proto zřejmě pochyboval o její schopností zdolat mocná opevnění města, zvlášť když postrádal těžká obléhací zařízení, která k obléhání nutně potřeboval. Rovněž doufal v psychologický efekt svého vítězství a očekával římskou nabídku míru. Ta však nepřicházela. Zde se rovněž projevila největší slabina Hannibalova tažení – podpora, které se mu dostávalo z vlastního Kartága, byla omezeného rozsahu a spojenci, kterými nahrazoval ztráty svých elitních jednotek, postrádali patřičnou kvalitu. Jakkoliv tedy drtivě vítězil v takticky brilantně vedených bitvách, po strategické stránce svá vítězství nedokázal využít.
Situace po bitvě