Keväällä 218 eaa. Hannibal saavutti Pyreneet. Galliassa hän onnistui välttämään niin paikallisten heimojen kuin roomalaistenkin hyökkäysyritykset. Syksyllä hän saapui Alpeille, joita hän lähti ylittämään. Tämä vaarallinen reitti toi Hannibalin suoraan roomalaisten alueille. Roomalaiset olivat toivoneet taistelun pysyvän vieraiden kansojen alueilla, mutta nyt heidän oli kohdattava haaste Italiassa. Hannibal varmisti ensin asemansa hyökkäämällä paikallisten heimojen kimppuun. Saman vuoden joulukuussa roomalainen sotapäällikkö hyökkäsi hänen kimppuunsa Trebian taistelussa. Väsytettyään roomalaisten jalkaväen hän löi roomalaisten asemat palasiksi yllätysrynnäköllä sivustaan. Voiton myötä Hannibalin asema Pohjois-Italiassa näytti vahvalta. Talven jälkeen Hannibal lähti kohti etelää, sillä gallit, joiden luona hän oli viipynyt, olivat alkaneet osoittaa kyllästymisen merkkejä. Hän ylitti Apenniinit ilman vastarintaa, mutta sen jälkeen hänen joukkonsa kärsivät vakavia tappioita suoalueilla tautien takia. Hannibal itse menetti näön toisesta silmästään.