В Сицилии на сторону Ганнибала перешли Сиракузы. Римляне рисковали совсем потерять этот остров. Казалось, что война была близка к окончанию. Римляне потерпели страшное поражение, и их большое войско перестало существовать. Заветные планы Ганнибала были близки к своему осуществлению. Но Средняя и Северная Италия продолжали сохранять верность Риму и готовы были поддерживать его и дальше.
Чем объяснить верность Риму этой части населения Италии? Северная и Средняя Италия были завоёваны и подчинились Риму раньше, чем Южная. В этих частях Италии проживало немало старых римских союзников. Веками сражались они бок о бок с римлянами, вместе с ними терпели военные невзгоды и делили добычу в случаях побед. Переход на сторону Ганнибала не сулил им никаких особенных выгод и даже казался рискованным. Карфагенское владычество могло оказаться не лучше римского.
Благодаря всему этому римляне скорее, чем можно было думать, оправились от тяжёлого поражения. Вначале, когда весть о Каннах дошла до Рима, страшная тревога охватила жителей столицы. Ожидали, что Ганнибал немедленно же двинется в поход на Рим. Но растерянность продолжалась недолго. Римский сенат сразу же принял необходимые меры к защите города. Когда же в Рим с остатками разбитого войска вступил виновник этого поражения, Теренций Варрон, весь сенат в полном составе вышел ему навстречу: сенаторы благодарили его и уцелевших воинов за то, что они не утратили веру в спасение отечества.
Вскоре был проведён новый набор в войско. К военной службе были привлечены римские граждане, начиная с юношей 17 лет и кончая всеми еще способными держать оружие в руках. Римляне решились также на крайнюю меру — дать оружие в руки рабов. На государственные деньги было выкуплено 8 тыс. молодых рабов. Они получили свободу и также были зачислены в ряды войск. Ко всем римским союзникам, сохранившим верность, были направлены послы с просьбой о помощи. Такими мерами Риму в короткий срок удалось восстановить своё войско.
Горький опыт поражений научил римлян многому. Они стали теперь действовать гораздо осторожнее. В Италии они уклонялись от крупных сражений с врагом, ограничиваясь обороной ещё не занятых им мест. Главную свою задачу они видели теперь в том, чтобы помешать Ганнибалу получать подкрепления и помощь от его новых союзников, чтобы затруднять снабжение войск продовольствием, постепенно истощать его силы.
После битвы при Каннах военные действия переносятся за пределы Италии — в Сицилию и Испанию. Большое римское войско и флот были направлены в Сицилию против города Сиракуз, перешедшего в 216 г. до н. э. на сторону Ганнибала. Сиракузяне были разбиты в открытом поле, и римляне начали осаду самого города. Борьба была тяжёлой. Сиракузяне сопротивлялись отчаянно. Живший в то время в Сиракузах великий греческий физик и математик Архимед отдавал всё своё время и талант обороне родного города. Он построил невиданные до тех пор боевые машины, которые наносили огромный ущерб римлянам. Полтора года с суши и с моря осаждали римляне Сиракузы. Наконец, в 211 г. до н. э. Сиракузы пали. Рассказывали, что когда римляне ворвались в город, они увидели пожилого человека, который сидел возле своего дома и, не обращая внимания на происходившее кругом побоище, что — то чертил на песке. Воины приняли его за помешанного. Один из них наступил на чертёж ногой. Пожилой человек воскликнул: «Не тронь мой чертёж!» Тут же он был убит. Это и был Архимед.
В то же время римляне вели упорную борьбу с карфагенянами в Испании. Римские войска находились там с 218 г. до н. э. Консул Сципион, узнав о походе Ганнибала через Альпы, вынужден был вернуться из Галлии, не дойдя до Испании. Но он, взял с собой в Италию только часть находившегося с ним войска. Другая часть, вторгшись в Испанию, препятствовала карфагенянам посылать оттуда Ганнибалу подкрепления. Борьбой с римлянами в Испании руководили братья Ганнибала.
Теперь по особому постановлению народного собрания в Испанию был направлен молодой и талантливый римский полководец Публий Корнелий Сципион (сын того консула Сципиона, который пытался перехватить армию Ганнибала при переправе через Рону). Молодому Сципиону удалось привлечь на сторону римлян некоторые иберийские племена, ненавидевшие карфагенян, как захватчиков и угнетателей. При помощи своих новых союзников Сципион одержал ряд побед и даже овладел главным городом карфагенян в Испании — Новым Карфагеном. Этот успех ободрил римлян. Теперь всем стало ясно, что римляне после битвы при Каннах не только не пали духом и не ослабили сопротивления, но сумели добиться ряда успехов. Ганнибал же не смог воспользоваться плодами своей победы.