Ему нужно было оплатить армию и подкупить колеблющиеся собрания в Карфагене добычей из города. Они были более экономны, чем римляне, и Ганнибалу, в отличие от римских полководцев, приходилось бороться с мирными фракциями в собраниях. Жители Сагунтума отклонили его предложение и попытались разрушить город, тогда Ганнибал приказал устроить кровавую бойню. Сенат объявил, что это был casus belli и что Карфаген нарушил договор, заключенный на Эбро. Затем были отправлены римские послы с требованием выдать Ганнибала и доставить его в Рим как военного преступника - типично неприемлемое требование римлян, выдвинутое для того, чтобы Рим мог заявить, что отказ сделал эту войну "справедливой". Полибий обвиняет обе стороны, как и большинство современных историков. Натан Розенштейн говорит, что ни Карфаген, ни Рим не хотели войны, но ни один из них не отступил, а Харрис обвиняет римский сенат в том, что он использовал сагунтинцев, чтобы спровоцировать Ганнибала на войну. Однако провокация, похоже, была взаимной.
Вторая Пуническая война продолжалась семнадцать лет, до 201 г. до н.э. Ганнибал, прекрасно зная о больших потенциальных резервах Рима, нанес стремительный удар по римскому сердцу. Он переправил своих солдат и слонов из Испании через Альпы в Италию. Его поддержали несколько кельтских племен, и он попытался привлечь на свою сторону италийских союзников Рима, отпустив всех пленных и пообещав восстановить свободу тех, кто заключил с ним союз. На пике его могущества в Италии около 40% италийских городов обещали ему свою верность, хотя большинство из них были более осторожны в своих действиях, стремясь не вызвать гнев Рима. После великой победы Ганнибала при Каннах в 216 г. до н.э., в которой, по словам Ливия, было убито 50 тыс. римлян, Ганнибал сказал своим пленникам, что "он ведет с римлянами не войну на истребление, а борьбу за честь и империю. Что его предки уступили римской доблести и что он стремится к тому, чтобы другие, в свою очередь, были вынуждены уступить его удаче и доблести вместе с ним". Поэтому он разрешил пленникам выкупить себя".
В этот момент Ганнибал не пошел прямым маршем на Рим, а предложил переговоры, и это решение иногда считают его самой большой ошибкой, поскольку Рим никогда не вел переговоров. Ливий приводит слова одного из его генералов, призывавшего к немедленному походу на Рим. Ганнибал ответил: "Я одобряю твое рвение, но мне нужно время, чтобы взвесить предложенный тобой план", на что полководец ответил: "Конечно, ни один человек не был благословлен всеми дарами Бога. Ты, Ганнибал, знаешь, как одержать победу, но не знаешь, как ею воспользоваться". Однако Ганнибал, вероятно, рассчитывал, что взятие Рима потребует длительной осады, грозящей трудностями со снабжением, в то время как его войска останутся неподвижными и уязвимыми для нападения. Он хотел не уничтожения Рима, а признания равного положения и независимости Карфагена. Канны также находятся на расстоянии более трехсот километров от Рима.
Союз Ганнибала с македонским царем Филиппом V в 215 г. до н.э. оказал давление на Рим, который оказался перед угрозой войны на два фронта. В течение пятнадцати лет Ганнибал совершал походы по Италии, опустошая римские территории. Римляне прибегали к тактике "фабианского промедления", прославленной полководцем Фабием Максимом. Ганнибал был уязвлен поражением своего брата Гасдрубала, который привел в Италию подкрепление. Когда Рим направил легионы для отпора карфагенским союзникам в Испании и Нумидии, Ганнибал оказался в затруднительном положении, не имея возможности получить подкрепление или защитить своих итальянских союзников. И снова решающую роль сыграли римские союзники и мобилизационная политика. Ганнибал также столкнулся с фракцией в Карфагене, которая противилась отправке ему подкреплений. Коммерческие инстинкты карфагенских лидеров побуждали их направлять больше ресурсов на иберийские кампании, чем на помощь Ганнибалу в Италии. Обладая экономическими ресурсами Испании, члены этой фракции полагали, что смогут восстановить равновесие сил с Римом. В конце концов Ганнибал был отозван в Карфаген и в 202 г. до н.э. проиграл последнюю битву с римлянами при Заме в Африке. После этого его правительство запросило мира и отправило его в ссылку. Карфаген, в отличие от Рима, не подчинил все свои источники власти военному делу. Торговые и военные расчеты оставались разными. Перед лицом Рима колебания между ними могли привести к гибели.
Римский сенат продолжал собирать новые легионы. В сенате не было ни восстаний, ни мирных фракций, только классовая солидарность и конкуренция между сенаторами за командование против Ганнибала, за славу и трофеи, которые это могло принести. Более 70% римских граждан в возрасте от семнадцати до тридцати лет были призваны на войну, что в наше время, отмечает Розенштейн, сравнимо только со штатами Конфедерации в Гражданской войне в США. Катастрофы в Италии, по словам Ливия, не побудили римлян "проронить ни слова о мире". Окончательный мирный договор 202 г. до н.э. лишил Карфаген большей части его территорий, большей части флота, права вести войну без разрешения римлян, а также выплаты огромной ежегодной компенсации в течение пятидесяти лет. Когда Карфаген предложил выплатить его одним платежом, Рим отказался - это было долгосрочное средство демонстрации подчинения Карфагена, статусная уловка.
В ходе этой войны римлянам удалось избежать двухсторонней войны с Филиппом V, царем Македонии, только благодаря заключению выгодного для Филиппа договора. Это было исправлено в 200 г. до н.э., когда они вторглись в его царство. Сенат откликнулся на призыв о помощи греческих государств Пергам и Родос, которые почувствовали угрозу от планируемого союза между Македонским царством и Селевкидами, другой эллинистической монархией на юго-западе Азии. Опасаясь, что эти небольшие державы будут побеждены, сенаторы воспользовались возможностью использовать свои увеличившиеся армии для завоеваний и в Греции.
Римляне одержали победу в Пунических войнах. Карфаген был разгромлен, но военный отряд во главе с Катоном неоднократно заявлял, что "Карфаген должен быть разрушен". В городе еще оставались богатые запасы, и жадные римляне стремились их захватить. Хойос утверждает, что ни один римлянин не мог поверить в то, что Карфаген по-прежнему представляет угрозу. Розенштейн сетует: "Объявление Республикой войны Карфагену в 149 году лежит несмываемым пятном на ее чести". Полибий и Аппиан утверждают, что сенат принял тайное решение напасть на Карфаген, подстрекая при этом нумидийского принца напасть на него первым. Когда Карфаген оказал сопротивление, сенат заявил, что это было нарушением договора, по которому Карфаген должен был сначала получить разрешение на войну. Заявив о справедливости войны, римская армия в 149 г. до н.э. прибыла в Африку и осадила Карфаген. Город предложил сдаться, но римские генералы потребовали сдать все оружие, покинуть город и основать