他对萨贡图姆(Saguntum)的攻击使寡头们面临选择:要么与罗马开战,要么在伊比利亚失去威望。
控制战略资源的不是汉尼拔,而是寡头们。
汉尼拔不断向伊比利亚或北非请求增援。
汉尼拔在战斗中损失的部队被训练水平和士气较低的意大利或高卢的雇佣兵所替代。
迦太基商业寡头的利益在整个战役中优先考虑伊比利亚的增援和供应,而不是支持汉尼拔。
---
公元前212年3月,汉尼拔在一次突袭中夺取了塔伦图姆(Tarentum),但未能控制其港口。
局势逐渐对他不利,罗马则逐渐占据优势。
罗马的执政官在公元前212年围攻卡普阿(Capua)。
汉尼拔进攻他们,迫使他们撤出坎帕尼亚(Campania)。
他转向卢卡尼亚(Lucania),在西拉鲁斯战役(Battle of the Silarus)中摧毁了一支1.6万人的罗马军队,杀死了1.5万名罗马士兵。
之后不久,汉尼拔又在赫尔多尼亚(Herdonia)第一次战役中摧毁了一支1.8万人的罗马军队,造成1.6万名罗马人死亡,使阿普利亚(Apulia)在那年摆脱了罗马的控制。
公元前211年,罗马执政官再次围攻卡普阿,最终征服了这座城市。
汉尼拔试图通过攻击罗马的围攻线来解除围困,但失败了。
他进军罗马,以迫使罗马军队撤回,成功引走了1.5万名罗马士兵,但围攻仍在继续,卡普阿最终沦陷。
公元前212年,马尔凯卢斯(Marcellus)征服了锡拉库萨(Syracuse),而罗马人在公元前211至210年摧毁了迦太基在西西里的军队。
公元前210年,罗马与艾托利亚同盟(Aetolian League)结盟,以对抗马其顿的菲利普五世。
菲利普试图利用罗马在意大利的专注来征服伊利里亚,结果面临来自多个方向的攻击,迅速被罗马及其希腊盟友击败。
公元前210年,汉尼拔再次证明了他的战术优势,在阿普利亚的赫尔多尼亚战役中对一支副领军队造成了严重的失败。
而在公元前208年,他在佩泰利亚战役(Battle of Petelia)中摧毁了一支正在围攻洛克里(Locri)的罗马军队。
然而,在公元前209年失去塔伦图姆以及罗马逐渐重新征服萨姆尼乌姆和卢卡尼亚后,他对南意大利的控制几乎丧失。
公元前207年,他再次成功进入阿普利亚,等待与他的兄弟哈斯德鲁巴尔共同进军罗马。
但在得知兄弟在梅塔乌鲁斯战役(battle of the Metaurus)中战败身亡后,他退到了卡拉布里亚(Calabria),在接下来的几年中维持自己的势力。
他兄弟的头颅被割下,横跨意大利送至汉尼拔的营地,作为罗马共和国坚定意志的冷酷信号。
这些事件的结合标志着汉尼拔在意大利成功的结束。
随着他的兄弟马戈(Mago)在利古里亚(Liguria)的失败(公元前205-203年)以及他与菲利普五世的谈判失败,恢复在意大利的统治的最后希望破灭。
公元前203年,在意大利打了近十五年的战争后,随着迦太基的军事运势迅速下降,汉尼拔被召回迦太基,指挥家乡抵御斯西庇阿·非洲(Scipio Africanus)的入侵。