Гасдрубал перешел Альпы весной 207 г. до н. э., воспользовавшись проложенным Ганнибалом путем и не столкнувшись, в отличие от брата, с каким-либо сопротивлением местных племен. Более того, кельты, а вслед за ними лигуры и этруски охотно вливались в ряды пунийского войска, и его численность возросла до более чем 30 тыс. бойцов. Под началом такого опытного и, несомненно, талантливого военачальника, как Гасдрубал, не единожды бившего римлян в Испании, это была грозная сила. В случае же объединения со вторым пунийским войском многочисленная армия в сочетании с полководческим гением Ганнибала превращалась для Рима в смертельную угрозу. В ожидании вестей от брата Ганнибал оставался в центральной Апулии, где карфагенянам противостояла консульская армия во главе с Клавдием Нероном. Правильным решением для братьев было бы выдвинуться друг другу навстречу, однако оба полководца медлили. Гасдрубал начал осаду Плаценции, желая захватить город и тем самым устрашить и склонить на свою сторону все кельтские племена Цизальпинской Галлии, Ганнибал же тянул с выступлением на север в расчете на успешные действия брата. Промедление имело для карфагенян гибельные последствия, чему способствовала и переменчивая военная фортуна. Все отправленные на юг гонцы Гасдрубала с сообщением брату о дальнейших планах были перехвачены римлянами, после чего Нерон решился на рискованный, но блестящий по исполнению и последствиям маневр. Оставив часть консульской армии на юге противостоять Ганнибалу, консул скрытно повел 6 тыс. пехотинцев и тысячу всадников на север (Liv. XXVII, 43–44). Стремительным маршем пройдя через Италию, полководец так же тайно, под покровом ночи, вошел в лагерь противостоявшего Гасдрубалу консула Марка Ливия. Теперь римское войско во главе с обоими консулами насчитывало около 40 тыс. бойцов и готово было сразиться с карфагенянами.
Уже на следующий день римляне вывели воинов из лагеря и выстроили в боевые порядки. Готовился к битве и Гасдрубал, однако, заметив в римских рядах уставших лошадей и старые щиты, заподозрил неладное и уклонился от сражения. Вскоре догадки пунийского полководца подтвердились, поскольку в римском лагере, где до этого сигналы давались один раз, теперь сигналили дважды – для двух консульских армий. Поняв, что теперь ему противостоят оба римских полководца, Гасдрубал попытался покинуть лагерь и оторваться от неприятеля, однако проводники карфагенского войска сбежали, и не знавший местности полководец был настигнут римлянами на берегу реки Метавр, где вынужден был принять бой в крайне неудачных для себя условиях. Пунийскому военачальнику пришлось значительно сузить свой строй, существенно увеличив глубину построения. Вперед он выставил десять боевых слонов, за которыми стояли лигуры. На правом фланге построения Гасдрубал расположил иберов, на левом – галлов. В римском войске центром боевых порядков командовал претор Луций Порций Лицин, левый фланг возглавил консул Марк Ливий, которому согласно очередности принадлежало в тот день право верховного главнокомандующего, а правый – Клавдий Нерон.
В начале сражения Гасдрубал бросил в атаку слонов и часть сил из центра и с правого фланга на левый фланг римлян. Завязавшаяся здесь битва была упорной и ожесточенной, слоны вначале потеснили римлян, но затем, обезумев под градом камней, дротиков и подожженных стрел, принялись топтать также ряды собственной пехоты, внося хаос и сумятицу. На противоположном крыле построений обеих армий активным боевым действиям препятствовал холм, разделявший порядки кельтов и когорт под командованием Нерона. Оказавшись не у дел, консул во главе нескольких когорт, взятых с правого фланга римского строя, обогнул римское построение с тыла, вышел на левый фланг, обогнул его и ударил по иберам под командованием Гасдрубала с фланга и тыла. Этот смелый маневр решил исход всего боя. Оказавшись в быстро смыкавшемся полукольце, иберы не смогли организовать сопротивление и были чуть ли не поголовно истреблены. Та же участь постигла и многих лигуров. В несколько более выгодном положении оказались галлы, бежавшие с поля боя. В пылу схватки погиб и сам Гасдрубал. Убедившись в невозможности отступить либо организовать действенное сопротивление, он бросился на коне в построение одной из римских когорт, предпочтя славную гибель капитуляции и плену. После этого армия Гасдрубала была полностью уничтожена, 56 тыс. воинов были убиты, 5 400 захвачены в плен. Погибли также шесть боевых слонов из десяти, причем большинство из них были убиты не римлянами, а самими пунийскими погонщиками, которые не могли совладать с взбесившимися животными. Римские потери при этом составили лишь 8 тыс. бойцов (Polyb. XI, 1; Liv. XXVII, 47–49; App. VII, 52; Oros. IV, 18). «Никогда за всю войну не было в одном сражении убито столько людей: карфагеняне расплатились за победу под Каннами гибелью полководца и войска», – писал о произошедшем Тит Ливий.