Schon in Oberitalien hatte Hannibal die Mittel der Propaganda gegen die Römer spielen lassen, er gab sich besonders leutselig gegenüber den gefangenen Italikern, sie wurden ohne Lösegeld in ihre Heimatorte entlassen. Überhaupt verfolgte er anscheinend den Plan, die Römer allmählich in Italien zu isolieren und die Bundesgenossen von ihnen abspenstig zu machen. Für einen Angriff auf Rom fühlte er sich jedoch nicht stark genug. Er wandte sich vielmehr über Picenum nach Apulien. Dies waren die reichsten Landschaften Unteritaliens, mit Ausnahme der befestigten Kolonien Luceria und Venusia lagen sie dem Zugriff Hannibals offen.
In Rom herrschte tiefe Niedergeschlagenheit. Die Comitien wählten den alten Q. Fabius Maximus zum Diktator, M. Minucius Rufus zum magister equitum, der Senat hatte in dieser entscheidenden Stunde auf seine Prärogative verzichtet. Mit der Person des Q. Fabius Maximus verbindet sich eine grundsätzliche Änderung der römischen Strategie. Da man die Legionen nicht noch einmal einer Niederlage durch Hannibal aussetzen wollte, beschränkten sich die Römer auf eine abwartende Kampfestaktik, sie brachte dem Q. Fabius Maximus den (zunächst ironisch gemeinten) Beinamen Cunctator ein, stieß aber je länger desto mehr auf den Widerstand einflußreicher Gruppen im römischen Senat. Diese setzten es durch, daß der magister equitum Minucius zum Mitdiktator des Fabius ernannt wurde, ein staatsrechtliches Novum, das aber inschriftlich gesichert ist. Gegen Ende des Jahres 217 aber war die sechsmonatige Amtszeit der beiden Diktatoren abgelaufen, die Consuln Servilius und Atilius Regulus übernahmen das Kommando. Am 15. März des Jahres 216 traten neue Consuln ihr Amt an, L. Aemilius Paullus und C. Terentius Varro. Senat und Volk, längst des Abwartens müde geworden, forderten eine Entscheidungsschlacht. Nicht weniger als acht Legionen wurden ins Feld geführt, zusammen mit den Bundesgenossen etwa 80000 Mann zu Fuß und 6000 Reiter, es war das größte Heer, das jemals unter römischen Feldzeichen gestanden hatte. Die Überlegenheit an schwerbewaffnetem Fußvolk gegenüber dem Aufgebot Hannibals (etwa 40000 Mann) war geradezu erdrückend, während die punische Reiterei nicht nur an Qualität, sondern auch an Zahl (10000 Mann) die Römer wesentlich überragte.
Die Schlacht bei Cannae (am 2. Sextilis = August 216 nach dem unrevidierten römischen Kalender) ist in ihren wesentlichen Phasen von Polybios (III 107-117) geschildert, sie ist eine typische Vernichtungsschlacht, die in der Geschichte oft geplant, aber nur selten erreicht worden ist. Entscheidenden Anteil am Sieg der Karthager hatte die glänzend geführte punische Kavallerie. Die römische Führung unter C. Terentius Varro hatte zwar keine kardinalen Fehler begangen, aber sie hatte wiederum Hannibal unterschätzt, insbesondere sein geniales Einfühlungsvermögen in die Absichten des Gegners.
Nur 14500 Mann haben sich von den Römern retten können.
Am Abend der Schlacht von Cannae gab es auf dem Boden Italiens kein römisches Heer mehr, die meisten der höheren militärischen Führer waren gefallen oder in punischer Kriegsgefangenschaft. Hannibal aber war weit entfernt davon, den Sieg zu überschätzen. Angeblich hat er sogar den Versuch gemacht, ähnlich wie seinerzeit Pyrrhos, mit den Römern Verhandlungen anzuknüpfen. Dies aber habe der Senat in schroffer Form zurückgewiesen, die Abgesandten Hannibals seien nicht einmal in die Stadt Rom hereingelassen worden. Das flache Land in Unteritalien lag jetzt dem Zugriff der Punier offen, aber selbst in diesen dunkelsten Stunden der römischen Geschichte hielten die meisten Bundesgenossen den Römern die Treue. Von einigen unbedeutenden Gemeinden in Apulien abgesehen, trat nur das wichtige Capua auf die Seite Hannibals über, aber auch dies nur unter dem Druck der karthagischen Partei in seinen Mauern.
Das Kriegsgeschehen aber zeigt von nun an neue Aspekte: die Nebenkriegsschauplätze gewinnen an Bedeutung, dazu weitet sich der Krieg aus, vor allem durch die Bemühungen Hannibals. In Nordspanien hatten die Römer seit 218 mit wechselndem Erfolge gekämpft. Im Bunde mit den Massilioten hatten sie einen Sieg über die karthagische Flotte an der Ebromündung davongetragen, ein Ereignis, das von Sosylos beschrieben worden ist (217). Im Jahre 214 war Sagunt in die Hände der Römer gefallen. Nachdem aber Hasdrubal, der Bruder Hannibals, aus Afrika zurückgekehrt war, wo er einen Aufstand des Numiderkönigs Syphax niedergeschlagen hatte, da wandte sich das Blatt. Beide Scipionen, zuerst Publius, dann auch Gnaeus, fielen im Kampfe (211), die römischen Eroberungen südlich des Ebro gingen wieder verloren. Dennoch war das Werk der Scipionen in Spanien nicht umsonst gewesen, sie hatten starke punische Truppenverbände auf dem iberischen Kriegsschauplatz gebunden und dadurch zur Entlastung Italiens
beigetragen.
Eine Folge von Cannae war der Vertrag, den Hannibal im Sommer 215 mit Philipp V., dem König der Makedonen, geschlossen hat. Hannibal hatte dadurch nicht nur einen der großen hellenistischen Staaten in den Krieg hineingezogen, der Kriegseintritt Makedoniens ließ darüber hinaus für die Karthager eine gewisse Entlastung erhoffen, da die Römer einen Teil ihrer Flotte zum Schütze ihrer Verbündeten jenseits der Adria aufbieten mußten. Gleichzeitig ging es auch auf Sizilien mit dem römischen Einfluß bergab. Als im Jahre 215 Hieron II., der treue Bundesgenosse der Römer, gestorben war, geriet sein Enkel, Hieronymos, sogleich ins karthagische Fahrwasser; er schloß mit Hannibal einen Vertrag, jedoch konnte sich dieses Abkommen nicht auswirken, da Hieronymos schon nach einer Regierung von nur 13 Monaten in Leontinoi ermordet wurde (214). Die Parteigänger der Punier, vor allem die beiden Griechen Hippokrates und Epikydes, sorgten jedoch dafür, daß Syrakus nach anfänglichem Schwanken wieder in das Lager der Punier zurückkehrte. Seit dem Jahre 214 war auch Sizilien Kriegsschauplatz, eine weitere Belastung der Römer. Sie gewannen jedoch bald die Oberhand, da die Karthager nicht imstande waren, ihren sizilischen Verbündeten ausreichende Hilfe zu leisten. Syrakus fiel im Jahre 212 in die Hände der Römer, Claudius Marcellus, der hier den Befehl führte, ließ die reiche Griechenstadt nach dem Kriegsrecht plündern. Dabei fand der berühmte Mathematiker Archimedes, der seine Erfindungen in den Dienst der Verteidigung seiner Heimatstadt gestellt hatte, den Tod. Der sizilische Krieg hatte damit seinen Höhepunkt überschritten, zwei Jahre später (210) fiel auch Akragas, und zwar durch den Verrat eines karthagischen Offiziers, des Libyphönikers Myttones, die Römer haben ihn dafür mit dem Bürgerrecht belohnt.
Die militärischen Operationen der folgenden Jahre in Italien sind deswegen so schwer zu überblicken, weil Polybios mit dem
Jahre 216 abbricht. Zunächst hat jedoch Hannibal weitere Erfolge errungen, er setzte sich durch Überfall in den Besitz Tarents (213/12 v. Chr.), auch Metapont, Herakleia und Thurii wechselten auf die Seite der Punier über. Gewaltigen Schrecken verbreitete Hannibal durch seinen Vorstoß gegen Rom (211). Diese Aktion war als eine Entlastung Capuas gedacht, das von einem römischen Belagerungsheere eingeschlossen worden war. Der eigentliche Zweck, die Aufhebung der Belagerung Capuas, wurde aber nicht erreicht. Im ganzen hielten sich Römer und Punier in Unteritalien die Waage, entscheidende Erfolge blieben auf beiden Seiten aus. Als im Jahre 210 in Italien eine Hungersnot ausbrach, die zweifellos auf die Verwüstungen des Krieges zurückzuführen ist, da hatten die Römer das Glück, eine reiche Getreidesendung von Ptolemaios IV., dem Könige von Ägypten, zu erhalten. Die Flotte gelangte unbehelligt nach Italien - dies ein Zeichen dafür, daß die Römer über die uneingeschränkte Seeherrschaft verfügten.