I 535 igangsatte Justinian sitt mest ambisiøse prosjekt; gjenerobringen av Italia, som på denne tiden fortsatt var under østgoterne. En mindre hær ble sendt over land gjennom Dalmatia, mens hovedstyrken ble fraktet over havet, igjen ledet av Belisarius. Han landet først på Sicilia og erobret øya lett. Marsjen gjennom det italienske fastlandet viste seg også å møte liten motstand, og Napoli, Roma og hovedstaden Ravenna falt en etter en. Goterne var tilsynelatende slått, og Justinian kalte Belisarius tilbake til Konstantinopel i 541. Belisarius brakte også denne gangen en fanget konge hjem til keiseren; østgoteren Witiges. Men østgoterne og deres allierte klarte snart å gjenforene seg under Totilas kommando. De følgende gotiske krigene var en utmattende serie av beleiringer, slag og tilbaketrekninger som spiste opp det meste av både romerske og italienske ressurser og utarmet store deler av Italia. Det så ut som om romerne sto i fare for å miste alle besittelsene de hadde vunnet, ettersom de ikke hadde forsynt troppene med tilstrekkelig finansiell og logistisk støtte. Justinian mistet tiltroen til Belisarius og beordret ham tilbake til hovedstaden. Sommeren 552 sendte Justinian en ny hær på 35 000 mann som forsterkninger, under ledelse av evnukken Narses. Totila ble beseiret og drept i slaget ved Busta Gallorum, og hans etterfølger Teias ble likeledes slått i slaget ved Mons Lactarius. Selv om noen mindre gotiske garnisoner fortsatte å gjøre motstand, og på tross av to senere invasjonsforsøk av frankere og alemannere, var gjenerobringen av Italia nå gjennomført. Justinian fortsatte utvidelsen av keiserriket ved å legge under seg alle øyene i Middelhavet, i tillegg til at han klarte å vinne en mindre del av Spania fra vestgoterne.