第二次布匿戰爭期間,率領軍隊從
西班牙翻越
庇里牛斯山和
阿爾卑斯山,犧牲了大量傭兵,進入
義大利北部,在特拉比亞戰役(公元
前218年)、
特拉西美諾湖戰役(公元
前217年)和
坎尼戰役(又叫「康奈大戰」)(公元
前216年)中巧妙運用計策 (地形、兵種及天氣變化)引誘並擊潰羅馬人,於進入羅馬國境的途中因眼疾而有一眼失明。坎尼戰役之後,羅馬人深感此人之軍事威脅,特別是情報搜集、行軍佈陣及外交分化羅馬聯盟上,於是減少與漢尼拔的軍團發生正面衝突,加強同羅馬聯盟之間的關係,施用焦土戰略,阻斷其軍需物資的補給,發行國債,增加軍團,從漢尼拔身上學會及改用游擊戰略,才逐漸奪回義大利南部的要塞。公元
前204年,羅馬人在
大西庇阿的率領下入侵迦太基本土,迫使漢尼拔回到非洲。公元
前202年,大西庇阿於扎馬戰役擊敗漢尼拔。