Etter å ha tvunget romerne til å trekke seg tilbake inn bak bymurene ved Panormus og herjet områdene i rundt, gikk Hasdrubals styrker mot byen ved å krysse Orethus-elven. Metellus frigjorde sitt lette infanteri for at de skulle forstyrre de karthagenske fortroppene. For å gjøre dette skjulte de romerske troppene seg i skyttergraver rundt byen. Den karthagenske elefant-kommandanten trodde motstanden var svak og rykket derfor frem for å spre sitt lette infanteri. Da romerne kom frem fra skyttergravene ble elefantene slått av panikk og vendte seg i mot sine egne rekker. På dette tidspunktet sto Metellus og hans tropper utenfor bymurene foran karthagenernes venstreside. Da elefantene flyktet ga Metellus ordre om angrep. Denne manøvren brøt den karthagenske linjen og fikk dem til å flykte. Romerne forfulgte imidlertid ikke den flyktende armeen, men fanget i stedet de elefantene som var igjen. De ble senere ble slaktet i Roma.