For a time, it looked like Manchester City would infamously blow the Premier League as they somehow went down 2-0 at home to Aston Villa with only 10 minutes remaining.
Liverpool had gone behind early to Wolves but rallied to 1-1, meaning another goal for them would have secured the title.
However, while Liverpool was able to grab a 3-1 win in the end, City also added three late goals, with two from Ilkay Gundogan and another from Rodri being enough to top the league.
Elsewhere, Leeds United stayed up with a 94th-minute goal from Jack Harrison earning a 2-1 win at Brentford, while rivals Burnley fell 2-1 at home to Newcastle United.
That saw Burnely fall to the second tier of the football pyramid, joining Watford and Norwich City in the Championship next season.
Arsenal were 5-1 winners over Everton, who only had just secured their own Premier League survival, but north London rivals Spurs finished fourth and took the Champions League spot with a 5-0 win against Norwich City.
Elsewhere, Ralf Rangnick's final game in charge at Manchester United ended in a 1-0 defeat at Crystal Palace, but it was enough to secure Europa League football with Conference action now David Moyes' reward for seventh place, as West Ham lost 3-1 to Brighton.
Chelsea won 2-1 against Watford going into an uncertain summer, but with the third spot safe, and Leicester beat Southampton 4-1 in the day's dead rubber.