205 год до н. э. прошёл в приготовлениях, а в 204 году до н. э. войско отплыло из Лилибея в Африку, на 400 транспортных и 40 военных судах. Сципион высадился близ Утики и разбил изменившего Риму Сифакса. Сторонники мира в Карфагене завели с римлянами переговоры, которые, впрочем, не привели ни к чему. Тогда карфагенское правительство вызвало в Африку Ганнибала и Магона. Битва при Заме (точное место и время её неизвестны, около 202 года до н. э.) уничтожила последние надежды карфагенян и привела к заключению мира, по которому Карфаген сжёг свои военные корабли, отказался от Испании и островов Средиземного моря, обязался вовсе не вести войн вне Африки, а в Африке не воевать без дозволения Рима. Сверх того, карфагеняне должны были в продолжение 50 лет выплачивать ежегодно контрибуцию по 200 талантов.