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