Seven-time European champions AC Milan are back in the Champions League after an eight-year break while Juventus qualified on the final day of the Serie A season.
Two penalties from Franck Kessie helped Milan to a 2-0 win at Atalanta, who had already claimed a top-four spot along with Serie A champions Inter Milan.
Juventus won 4-1 at Bologna with two goals from Alvaro Morata and strikes from from Federico Chiesa and Adrien Rabiot.
Still, Juventus needed help and got it when Verona held Napoli to a 1-1 draw.
Amir Rrahmani had put Napoli ahead on the hour mark but Davide Faraoni quickly equalised for Verona.
When Juventus' game finished a few moments earlier, Bianconeri players watched the final moments of the Napoli-Verona match on the touchline before they could celebrate.
The final standings read: Inter (91 points), Milan (79), Atalanta (78), Juventus (78) and Napoli (77).
Roma came back from two goals down against Spezia for a 2-2 draw to take seventh place and a spot in the new Europa Conference League for incoming coach Jose Mourinho.
Stephan El Shaarawy and Henrikh Mkhitaryan equaliaed for Roma after Daniele Verde and Tommaso Pobega had put Spezia ahead.
Sassuolo, who finished eighth, beat Lazio 2-0 with goals from Giorgos Kyriakopoulos and Domenico Berardi.
The win was achieved despite Sassuolo finishing the game with 10 men after Kyriakopoulos picked up his second yellow.
Lazio were already assured of finishing sixth and will go into the Europa League with Napoli.
Torino and already-relegated Benevento drew 1-1.
Inter got their title party started by crushing Udinese 5-1 before an award ceremony on the field at the final whistle - in which captain Samir Handanovic lifted the trophy to huge cheers from inside and outside the stadium.
There were 1000 invited guests allowed into San Siro as friends and family and 4500 fans outside in an allocated area.
Hundreds of them had started gathering hours before the team arrived, carrying flags and setting off flares while chanting songs to celebrate Inter's first Serie A title in 11 years.
Ashley Young and Christian Eriksen set Inter on the way to victory with first-half goals. Lautaro Martinez converted a penalty 10 minutes after the break with Ivan Perisic and Romelu Lukaku also scoring to add to the festive atmosphere.
Roberto Pereyra netted a late penalty for Udinese.