Весной 207 года до н. э. Рим опять почувствовал реальную угрозу. На сей раз она исходила с двух сторон. Конечно, борьба с Ганнибалом на юге велась довольно успешно, но Гасдрубалу все же удалось перевалить с довольно большой армией через Пиренеи, а затем и через Альпы. Причем сделал он это неожиданно быстро даже для брата. Галлы на сей раз встретили пунийцев вполне дружелюбно, вероятно убедившись в том, что целью их является Италия, а не Галлия. К тому же воины Гасдрубала шли уже проторенной их предшественниками дорогой. В северной Италии пунийцы, как и раньше, осадили Плацентию; против них сюда выступили легионы консула Марка Ливия.
На юге против Ганнибала действовал другой консул – Гай Клавдий Нерон. Карфагенский вождь отчаянно пытался прорваться на север, на соединение с братом. В Лукании у Грумента произошла битва, в которой римский командующий, устроив засаду и вовремя построив войска, разбил пунийцев, несколько беспорядочно вступивших в сражение. Ганнибал отошел к городу Венусия, но и тут потерпел поражение.
Гасдрубал тем временем, оставив Плацентию, двигался вдоль Апеннин к юго-востоку. Брату он отправил письмо, в котором предлагал встретиться с войсками в Умбрии. К несчастью для пунийцев, гонцы Гасдрубала попали в плен и были допрошены претором Квинтом Клавдием, командовавшим римскими легионами в Калабрии. Полученную информацию он передал консулу Гаю Клавдию Нерону. Таким образом, римский командующий знал то, чего пока не знал сам Ганнибал. И в этой ситуации Нерон отважился на шаг, достойный как раз хитроумного пунийца: оставил против него небольшой отряд, а сам тайно снялся с семью тысячами человек и совершил «прыжок» на перехват Гасдрубала. В ожесточенной битве на реке Метавр войско последнего потерпело поражение, сам карфагенский полководец был убит. Вскоре сторожевым отрядам Ганнибала враги подбросили голову Гасдрубала. Для Ганнибала это фактически означало конец надежд на перелом в ходе войны, он отступил в Бруттиум, на самый юг полуострова.
Тем временем в Испании в отсутствие Гасдрубала Сципион все больше и больше теснил карфагенян. У них в руках в конце концов остался только Гадес, где наступление римлян доблестно отражал Магон Барка. Однако положение его здесь все равно было безнадежным, и карфагенский совет приказал ему отбыть с войсками в Италию. Испания оказалась полностью под властью Рима. Магон же высадился около Генуи в 205 году до н. э. Он пытался создать в северной Италии коалицию против Рима, но был разбит на территории инсубров (возле Милана) двумя гораздо более многочисленными римскими армиями. Римская конница уже была оттеснена, римская пехота уже была приведена в расстройство, и победа, по-видимому, клонилась на сторону карфагенян; но сражение приняло иной оборот вследствие смелого нападения одного римского отряда на неприятельских слонов и тяжелой раны, полученной самим Магоном; его армия была вынуждена отступить к берегам