Мир 242 года до н. э. был куплен дорогой ценой. К римлянам перешли не только все доходы, которые карфагеняне получали с Сицилии, но и почти монопольное торговое господство Карфагена на Западе было существенно ослаблено. Поведение Рима во время восстания наёмников ясно показало враждебность его позиции — стало ясно, что мирное сосуществование абсолютно невозможно.
Вновь получив после подавления восстаний должность главнокомандующего Гамилькар Барка начал войну в Испании. Ещё в глубокой древности, в конце II тысячелетия, эта страна была объектом интенсивной колонизаторской и торговой деятельности финикийцев. В конце II — начале I тысячелетия они основали на юге полуострова целый ряд больших городов, и среди них такие крупные торгово-ремесленные центры, как Гадес, Малака, Секси и некоторые другие. Объединившись в ходе ожесточённой борьбы против Тартесса и греческой колонизации Пиренейского полуострова, они сравнительно рано вынуждены были признать верховенство Карфагена. Понятно, что при таких связях, уходящих в глубокую древность, именно Испания была наиболее удобным плацдармом для организации похода в Италию. Гамилькар и его зять Гасдрубал в течение 9 лет расширяли владения Карфагена, пока первый не пал в битве при осаде города Гелики, а второго убил в Новом Карфагене ибер-варвар.
Первоначально осада складывалась благоприятно для пунийцев, и их командующий решил отправить большую часть своей армии и слонов зимовать на основную базу пунийцев — Акра Лёвке. Но в этот момент вождь племени ориссов, связанный, как казалось, дружескими отношениями с Гамилькаром, неожиданно пришёл на помощь Гелике, и пунийцы, не выдержав его удара, обратились в бегство. Возникла непосредственная опасность для сыновей Гамилькара, находившихся в боевых порядках, и, для того чтобы её ликвидировать, Гамилькар принял основной удар на себя — преследуемый противниками, он утонул в реке, а дети тем временем были доставлены в Акра Лёвке. Его политику продолжил его зять Гасдрубал, избранный войском новым главнокомандующим. Важнейшим политическим актом Гасдрубала, которым он ещё более, чем другими своими действиями, продолжил политику Гамилькара, было основание на пиренейском берегу Средиземного моря Нового Карфагена. Этому городу, расположенному на берегу удобного залива и окружённому цепью неприступных холмов, повезло больше, чем Акра Левке: если последний, насколько об этом можно судить, всегда оставался заштатным городом и с Гадесом соперничать не был в состоянии, то Новый Карфаген сразу же превратился в административный центр пунийских владений в Испании и в один из важнейших торговых центров всего Западного Средиземноморья. Трудами этих людей Карфаген не только полностью компенсировал потери в ходе первой пунической войны, но и приобрёл новые рынки сбыта, а серебряные рудники приносили такие доходы, что политические противники Гамилькара и Гасдрубала были совершенно лишены возможности им противодействовать. Действия Барки вызвали естественное беспокойство греческих колоний на Пиренейском полуострове. Они почувствовали угрозу своей самостоятельности и обратились за защитой к Риму, который получил желанный повод вмешаться в испанские дела. Уже при жизни Гамилькара состоялись переговоры между Римом и Карфагеном, и между ними были разделены сферы влияния (южная — пунийская, северная — римская), а их границей признавалась река Ибер.
В момент смерти отца Ганнибалу исполнилось семнадцать лет. Судя по дальнейшим событиям, он вместе с братьями Магоном и Гасдрубалом покинул Испанию и вернулся в Карфаген. Обстановка военного лагеря, участие в походах, наблюдения за дипломатической деятельностью отца и зятя, несомненно, оказали решающее воздействие на его формирование как полководца и государственного деятеля.
Именно отцу Ганнибал был обязан и своим незаурядным образованием, в том числе знанием греческого языка и литературы, умением писать по-гречески. Насколько принципиальным был этот шаг Гамилькара Барки (приобщение детей к эллинской культуре), видно из того, что он был сделан вопреки старинному закону, запрещавшему изучать греческий язык. Переступая через давнее установление, которое должно было отгородить пунийцев от исконного врага — Сиракуз, а фактически изолировало их от окружающего мира, Гамилькар не только стремился подготовить своих детей, прежде всего Ганнибала, к активной политической деятельности в будущем. Он хотел подчеркнуть своё стремление ввести Карфаген в эллинистический мир — и не как чужеродное явление, но как органическую часть — и обеспечить ему поддержку и сочувствие греков в предстоящей борьбе с римскими «варварами». Между тем Рим начинает интересоваться делами на западе Средиземноморского бассейна и заключает союз с Сагунтом, направленный прямо против Карфагена и имеющий целью остановить продвижение последнего на север.
А Ганнибал вернулся в Испанию, где благодаря своим личным качествам стал очень популярным в армии — после смерти Гасдрубала солдаты выбрали его главнокомандующим.
Когда Ганнибал пришёл к власти, ему было двадцать пять лет. Господство карфагенян в Испании было прочно установлено и южная часть Пиренейского полуострова казалась надёжным плацдармом для наступления на Рим. Сам Ганнибал обзавёлся уже традиционными для Баркидов прочными связями с иберийским миром: он был женат на иберийке из союзного Карфагену города Кастулона. Он сразу повёл себя так, будто война с Римом уже решена и поручена ему, а сферой его деятельности назначена Италия. Ганнибал, по-видимому, и не скрывал своего намерения напасть на союзный римлянам Сагунт и тем самым вовлечь Рим в прямой конфликт, однако стремился при этом сделать вид, будто атака на Сагунт произойдёт сама собой, в результате естественного развития событий. С этой целью он одержал ряд побед над испанскими племенами, жившими на границе северных владений Карфагена и вышел непосредственно к границам области Сагунта. Не смотря на то, что Сагунт был римским союзником Ганнибал мог рассчитывать на невмешательство Рима, который был занят борьбой с галлами и иллирийскими пиратами. Спровоцировав конфликты между Сагунтом и иберийскими племенами, находящимися под пунийской властью он вмешался в конфликт и под незначительным предлогом объявил войну. После довольно тяжёлой 7-месячной осады город был взят, а Рим и так и не решился оказать Сагунту военную помощь, лишь посольство посланное в Карфаген уже после взятия города прямо объявило о начале войны. Перед походом в Италию Ганнибал дал армии отдых на всю зиму. Серьёзное внимание он уделял обороне Африке и Испании. В Африке Ганнибал оставил 13850 пехоты и 1200 всадников, набранных в Испании, туда же были направлены 870 балеарских пращников. Сам Карфаген дополнительно усилили 4000 гарнизоном. Командовать пунийскими войсками в Испании Ганнибал назначил своего брата Гасдрубала и передал в его распоряжение значительные воинские силы: пехотинцев — 11 850 ливийцев, 300 лигуров, 500 балеаров, и всадников — 450 ливиофиникиян и ливийцев, 300 илергетов, 800 нумидийцев. Кроме того, у Гасдрубала были 21 слон и для обороны побережья от римского вторжения с моря флот в составе 50 пентер, 2 тетрер и 5 триер.
Армия вторжения состояла примерно из 50000 пехотинцев, 9000 всадников и 37 слонов. Между тем римляне также готовились к войне консул Тиберий Семпроний Лонг располагал 24000 пехоты, 2400 всадников и 160 кораблей, Второй консул — Публий Корнелий Сципион I имел 22000 пехоты и 2200 всадников. Армия Рима в Галлии, под начальством претора Луция Манлия насчитывала 18000 пехоты и 1600 всадников. В целом римская армия насчитывала 64000 пехоты и 6200 кавалерии — немногим более, чем было у Ганнибала. Существенное преимущество римлян заключалось, в том, что им предстояло воевать на родине и для них мобилизация дополнительных воинских контингентов была более простым делом, чем для пунийского полководца получение подкреплений. Нельзя, впрочем, не видеть и распылённости римской армии, и отсутствия единого командования, что, конечно, затрудняло римлянам ведение боевых операций. К счастью для Карфагена Ганнибал был гением военного дела.