Hwang Hee-chan’s second-half winner gave the hosts a valiant victory at Molineux as brave Wolves stunned Manchester City to pull off a shocking 2-1 victory and break the champions’ winning streak.
Ruben Dias’ early own goal was reversed by Julian Alvarez’s free kick, but Pep Guardiola’s team was unable to respond to Hwang’s strike.
They were aiming to win their first seven Premier League games for the first time but instead were beaten by a combative and fired-up Wolves.
Defeat puts a fresh spin on next Sunday’s trip to Arsenal, with the Gunners now a point behind the leaders, after Wednesday’s Champions League game at RB Leipzig.
For Wolves boss Gary O’Neil it represents vindication for his methods, with the manager having come under early fire this season.
Few, though, would have expected the result to come against City.
Erling Haaland went close to Matheus Nunes’ cross as, predictably, the visitors dominated early but found Wolves tough to break down.
Nunes was the obvious pantomime villain, having effectively gone on strike to force his eventual #53million deadline-day move to City from Wolves.
So there was even more delight from the home fans when Wolves stunned Guardiola’s men after 13 minutes.
Mateo Kovacic’s loose pass hit Phil Foden which allowed Pedro Neto to seize on the mistake and tear past Nathan Ake.
He powered his way down the right, avoiding Ake’s desperate lunge, to race into the area and Dias deflected his cross past Ederson from close range.
Neto remains Wolves’ man of the moment, their spark, having given Liverpool nightmares two weeks ago and scored in the 1-1 draw at Luton, but Wolves had been in this position before and faltered.
They faded badly after a fine first half against Liverpool to lose and a promising display on O’Neil’s debut at Manchester United yielded nothing.
Wolves needed results to back up their grit and determination but Rayan Ait-Nouri gifted Foden a way through in a sloppy moment to underline the fragile nature of their lead.
City were left frustrated, Jeremy Doku was haphazard and Haaland engaged in a physical battle with Craig Dawson, while Foden and Nunes were ineffective.
As expected, City had plenty of the ball but the Wolves wall stood firm and there was even a degree of control from the hosts when in possession.
Guardiola, in the stands serving a touchline ban, had seen enough and hauled Nunes off for Oscar Bobb at the break.
Opposite number O’Neil continued to conduct his men from the sidelines as Wolves dug in, while weak Haaland and Alvarez efforts did little to trouble Jose Sa.
Yet the hosts’ resistance was broken after 58 minutes. Wolves were still fuming Matheus Cunha’s demands for a free-kick were turned away after a quick break.
City went up the other end and Joao Gomes barged into the back of Bobb 20 yards out for Alvarez to then curl his free-kick into the top corner.
It was the cue for the visitors to ramp up the pressure in a barnstorming half and Dawson cleared off the line before Sa turned Manuel Akanji’s shot wide.
They proved crucial as Hwang turned up the heat on City to grab the winner after 68 minutes.
Nelson Semedo was sent dashing down the right and his cross was cleared as far as Hwang, whose shot was blocked by Dias. It fell for Cunha to keep his cool and lay the ball off to Hwang to sweep in from six yards.
Molineux erupted and then braced for the expected City onslaught. Kalvin Phillips curled wide and Kyle Walker shot at Sa, yet there was no comeback as Wolves deservedly held on.