В середине декабря к Требии подошла армия Тиберия Семпрония Лонга. Семпроний рвался в бой, надеясь разгромить Ганнибала до окончания его консульских полномочий. Сципион считал, что не нужно торопить события, так как время работает на римлян. Но Сципион заболел, и Семпроний фактически стал единоличным командующим. Ганнибал заставил римлян переправиться через Требию, разгорелось ожесточённое сражение, которое продолжалось, пока из засады не выскочил кавалерийский отряд под командованием Магона, который атаковал тыл римлян. Битва закончилась сокрушительным поражением римлян. Победа при Требии отдала Ганнибалу Цизальпинскую Галлию и позволила привлечь на свою сторону все племена, населявшие этот регион. После этой победы Ганнибал переправился через Требию и направился в Болонью, где и провёл зиму.