The story of the Premier League season was written in the space of five minutes at the home of the champions, when Pep Guardiola's side fought back from a two goal deficit and netted thrice in surreal fashion to retain their crown.
Despite a dominant start to proceedings, Manchester City were lacking the cutting edge in attack and were often exposed at the back with Fernandinho partnering Aymeric Laporte in central defence and John Stones at right-back.
City received an early blow in the title decider when Matty Cash headed in from Lucas Digne's cross to steer Steven Gerrard's men in front and silence the Etihad Stadium, with Liverpool then in a position to win the league with a victory over Wolves.
A frustrating opening 45 minutes finished with the hosts trailing at the break and looking toothless and predictable in attack. Guardiola brought on Oleksandr Zinchenko for Fernandinho and switched Stones to centre-half, with Joao Cancelo operating on the right flank for the second-half.
Zinchenko made an instant impact by bringing life into the City attack as he threatened from left-back on a few occasions in the opening five minutes of the second-half.
However, things went further wrong for Guardiola's side when Philippe Coutinho scored expertly to give Villa a two-goal advantage, with City needing three goals to ensure the title as Liverpool looked to claim the lead themselves against Wolves.
Ilkay Gundogan headed in from a delightful cross by Raheem Sterling at the back post to halve the deficit, with Zinchenko playing Rodri in to side foot the leveller shortly after - a few minutes of play that sent the Etihad rocking and filled the crowd with belief and hope of a third goal to clinch the title.
On as a substitute in place of Bernardo Silva, Gundogan made a late run into the six yard box and tapped home from Kevin De Bruyne's inch-perfect ball to win the league for City and complete one of the most sensational stories written in the history of the English top-flight.
Reflecting on the spirit his side showed in his final game in a City shirt, club captain Fernandinho said: "Always. Always we believed. If you work for City or if you support City, you always believe. We never give up."
After recently suffering a heartbreaking exit from the Champions League semi-final to Real Madrid in similar fashion to how they stole a win against Villa, the Brazilian hailed the character shown by the Blues to fight back from setbacks time and again this season.
“We know how to split both competitions (Champions League and Premier League)," the 37-year-old added.
"It was a little bit of a shock for us (the defeat at the Santiago Bernabeu) but after that we have a good response in the games we played. Today, we deserved by far to be champions."