Римские командиры эпохи Республики восхищались своим бесстрашием и отвагой. Однако после трагического поражения в сражении при Каннах руководство армией поручило Квинту Фабию Максиму, умному и предельно осторожному стратегу. Он собрал оставшиеся войска Рима и решительно преследовал Ганнибала, который продолжал беспокоить Италию, не давая ему покоя и не позволяя ему последовательно захватывать земли, принадлежащие союзникам Рима. Для этих союзников ситуация стала крайне сложной: сначала к ним приходил сам Ганнибал, настойчиво призывая поддержать его святую борьбу против коварного Рима. Но как только карфагеняне уходили, римляне являлись с напоминанием о необходимости соблюдения союзнического долга. Им приходилось обеспечивать и поддерживать их обоих, соглашаясь с их требованиями.
В Испании, которая была главной наградой для победителя во Второй Пунической войне, римлянам шло намного лучше. Братья Сципионы, Публий и Гней, сражались с карфагенянами на равных, но в 211 году до нашей эры оба они погибли в сражении при Верхнем Бетисе. Казалось, что вскоре вся Испания окажется в руках Карфагена. Чтобы изменить ситуацию, из Рима были отправлены дополнительные войска, которыми командовал сын одного и племянник другого павших в битве военачальников - Публий Корнелий Сципион. В то время никто еще не предвидел, что именно этому молодому человеку, которому едва исполнилось 24 года, предстоит нанести поражение Карфагену и триумфально закончить войну.
Сципион неожиданно атаковал Новый Карфаген, который считался неприступным - главным портом и базой карфагенян в Испании. В результате этой атаки в плен попали знатные заложники, родственники вождей нескольких испанских племен. Сципион отпустил их всех без требования выкупа, что поразило как скупых пунийцев, так и иберов, привыкших к жестокости обеих сторон конфликта, до самого сердца. Благодарные иберы массово стали переходить на сторону римлян, дезертировав из карфагенских армий. В то время, когда у карфагенцев еще оставались силы, полководцы Карфагена решили наказать щенка-римлянина, который многое себе позволял.
Под командованием Гасдрубала, родного брата великого Ганнибала, войска Карфагена выступили. Весной 208 года до нашей эры их армия столкнулась с римской рядом с Бекулой (Байлен в современной Испании). Испанцы устроили хорошо укрепленный лагерь в горах и стали ждать благоприятного момента, полностью уверенные, что Сципион не решится на атаку. Однако римляне тайно подобрались к его стенам и одновременно нанесли удар с трех сторон. Смогли спастись лишь треть карфагенян, которых Гасдрубал решил отвести в Италию, чтобы помочь своему брату.
В следующем году обе стороны сосредоточились на сохранении своих сил. Однако в 206 году до нашей эры состоялась решающая битва при Илипе. У Сципиона было всего 43 тысячи воинов, половина из которых составляли союзники из местных племен. Ему противостояла армия еще одного брата Ганнибала - Магона Баркида, к которому присоединился Гасдрубал, сын Гисгона, третий карфагенский полководец в Испании. В войсках противников Рима было от 54 (по Титу Ливию) до 74 (по Полибию) тысяч солдат. Обе армии заняли оборонительные позиции, но не спешили вступать в бой.
И вот тогда Сципион решил применить полную тактическую разнорабочку. В течение нескольких дней римские войска внезапно выходили из своего лагеря и выстраивались в боевую готовность, будто готовы нанести нападение на противника. Карфагеняне поднимали тревогу и готовились отразить атаку римлян. Однако после некоторого времени римская армия снова отступала в свой лагерь. В это время Сципион заметил, что враг всегда располагает отборную ливийскую пехоту в центре своего боевого строя, а его фланги защищены местными иберами, которые менее хорошо вооружены и не так стойки в сражении.
Когда карфагеняне привыкли к тому, что римляне только устрашают, но не атакуют, римская армия внезапно двинулась вперед. Сначала римские легионеры на флангах вступили в наступление, в то время как центр, состоящий из союзных сил, замедлялся. Легионеры уже вступили в бой с иберами, в то время как ливийская пехота всё ещё ожидала, чтобы центральная часть римской армии добралась до них со спокойным шагом. Армия Карфагена чудом избежала окружения и постепенно начала отступать, к вечеру ее остатки нашли укрытие в укрепленном лагере.
По ночи Гасдрубал и Магон планировали скрыть свою армию через горы, в надежде уклониться от римлян. Однако Сципион, который ждал этого момента, неожиданно напал на них, когда они уже были уверены, что смогли уйти от преследования римлян. В этом ночном сражении выжило всего 6 тысяч карфагенян и иберов, которые собрались в круговую оборону на высоком холме. В ситуации, когда все было безнадежно, иберы начали переходить на сторону противника. В Гадесе (современный Кадис) Магон и Гасдрубал собрали остатки своих войск. Благодаря Сципиону Рим практически полностью завладел Испанией.