สงครามพิวนิกครั้งที่สอง หรือบ้างเรียกว่า
สงครามฮันนิบาล หรือ
สงครามต่อต้านฮันนิบาล (สำหรับชาวโรมัน) กินเวลาตั้งแต่ปีที่ 218 ก่อนคริสตกาลจนถึงปีที่ 202 ก่อนคริสตกาล ประกอบด้วยการรบย่อยๆ จำนวนมากทั้งทางฟากตะวันตกและตะวันออกของ
ทะเลเมดิเตอร์เรเนียน สงครามนี้จัดว่าเป็นสงครามใหญ่ครั้งที่ 2 ระหว่าง
คาร์เทจกับ
สาธารณรัฐโรมัน โดยมีชาว
เบอร์เบอร์เข้าร่วมด้วยในฝั่งของคาร์เทจ รัฐทั้งสองนี้มีสงครามใหญ่กันทั้งสิ้น 3 ครั้งตลอดช่วงเวลาที่ทั้ง 2 รัฐดำรงอยู่ เรียกชื่อว่า "
สงครามพิวนิก" เนื่องจากชื่อของอาณาจักรโรมในภาษาคาร์เทจนั้นเรียกว่า "พิวนิชี" ตามภาษาฟีนีเชียนของบรรพบุรุษ
[3]สงครามนี้นับว่าเริ่มต้นขึ้นเมื่อ
ฮันนิบาลเดินทางข้าม
เทือกเขาแอลป์ไปบุกจู่โจมโรมโดยไม่ทันตั้งตัว ตามด้วยทัพพันธมิตรของชาว
กอลที่ร่วมเข้าบดขยี้กองทัพโรมันใน
ยุทธการทรีเบีย และการซุ่มโจมตีครั้งใหญ่ใน
ยุทธการทราซิมีน ฝ่ายโรมันพ่ายแพ้ครั้งใหญ่ใน
ยุทธการคันนาย หลังจากนั้น พันธมิตรของโรมันหลายเมืองยกทัพไปโจมตีคาร์เทจ และทำให้การรบในอิตาลียืดเยื้ออยู่นับทศวรรษ ซึ่งเป็นช่วงเวลาที่กองทัพโรมันถูกทำลายไปเป็นจำนวนมาก อย่างไรก็ดี กองทัพโรมันสามารถเข้ายึดเมืองใหญ่หลายเมืองที่เข้ากับฝ่ายศัตรู และทำลายทัพคาร์เทจที่จะยกไปช่วยฮันนิบาลลงได้ใน
ยุทธการเมเทารัส สกิปิโอ อัฟริกานุส นายพลชาวแอฟริกันซึ่งเป็นแม่ทัพโรมันสามารถเข้ายึดอาณาจักรคาร์เทจใหม่บนแผ่นดินสเปนได้ และเข้าครอบครองไอบีเรียใน
ยุทธการอิลิปา สงครามสิ้นสุดลงใน
ยุทธการซามา เมื่อสกิปิโอ อัฟริกานุส ประจันหน้ากับฮันนิบาลในแอฟริกา และฝ่ายหลังพ่ายแพ้ยับเยิน คาร์เทจยอมจำนนและตกเป็นรัฐอารักขาของโรมัน