Wolves 2 (Milijaš 30, Edwards 57)
Manchester City 1 (Adebayor-pen 23)
Finally, finally, Wolves claimed a reward after yet another impressive Premier League performance. Following undeserved defeats to the likes of Spurs, Villa and Chelsea, a confidence boosting 2-1 victory over big spending Manchester City was just what the doctor ordered after so many recent disappointments.
Karl Henry returned, after serving his three game suspension, in place of Dave Jones and Stephen Hunt replaced Jelle van Damme as the only changes to the team that had started against Chelsea.
City kicked-off but Wolves grabbed possession and within 40 seconds Vincent Kompany had fouled Kevin Doyle outside the visitors box. Matt Jarvis wasted no time in taking the free-kick but Kompany had got back to head clear.
The ball was played out to Emmanuel Adebayor on the right and he outpaced Henry before hitting a low cross from the by-line that was hooked clear by Kevin Foley.
Mario Balotello poked the ball wide under pressure from Foley following a James Milner centre, and then Balotello fired over the bar after taking a return pass from Adebayor.
City had dominated the opening stages but the home fans were cheered by good crosses from Jarvis and Foley as Wolves began to work their way back into the game.
After a Stephen Ward foul on Milner 30-yards out, Balotello's free-kick hit the wall and looped into the air but Milner was penalised for pushing Foley as the pair went for the loose ball.
City took the lead midway through the half after David Silva had outwitted Richard Stearman who caught the Spaniard with his trailing leg as they chased a ball to the by-line in the Wolves box. Adebayor sent Marcus Hahnemann the wrong way from the spot.
Just four minutes later Joe Hart and then the post denied Dave Edwards an equaliser. The City keeper tipped over a looping header from Edwards who then rattled the woodwork with a powerful header from Jarvis's corner.
But on the half hour the pressure paid off as Ward played a short ball to Jarvis whose cross took a deflection on the way to Nenad Milijaš. The Serb's first time shot from the 18-yard line flew into the corner of the net in front of an ecstatic South Bank crowd.
Then a low curling cross from Jarvis eluded Doyle and Hunt before the ball went behind just beyond the far post.
Hunt's free-kick into the area after Doyle had been fouled by Kompany to the right of the City box was headed clear, and then a volley from Hunt was deflected away by a defender as Mick McCarthy's team forced their illustrious counterparts back.
Although the Molineux men finished the half on top, Adebayor was only just wide with a fine header after Balotello had supplied the cross.
Half-Time: Wolves 1 City 1
Balotello was lucky to escape a yellow card after he had clattered into Jarvis shortly after the restart.
Wolves moved into the lead in the 57th minute after an excellent cross from Foley. Kolo Toure headed clear but only as far as Doyle who delivered a low drive that hit Toure and bounced to Edwards who forced the ball home from eight-yards out (pictured).
Hunt went into the book after pulling back Adebayor and Hahnemann got a hand to Silva's angled drive. The keeper then cut out a low cross from Balotello but generally speaking the defenders in front of him were doing a great job in restricting City's opportunities.
Hart had to dive full length to hold onto a well struck effort from Milijaš, and then both sides made changes with George Elokobi coming on for Hunt for Wolves whilst Roberto Mancini introduced Adam Johnson for Gareth Barry.
Johnson was soon involved with a clever piece of ball work that ended with a cross that hit Elokobi and went behind for a corner.
Adebayor blazed a shot over the bar from a good position after Johnson had pulled the ball back for him, and the City striker was replaced by Pablo Zabaleta shortly afterwards.
City were finding it hard to break down the home defence and although the Manchester side enjoyed a lot of possession, they were finding it difficult to create any decent openings.
The crowd were incensed when the referee failed to give a foul after Kolo Toure appeared to pull Doyle back - it was one of a number of decisions that bemused the striker.
More substitutions followed with Michael Mancienne coming on for Milijaš and Jo Silva for Micah Richards for the opposition.
After Zabaleta had hit Foley with a late challenge, he went into the book and in the last minute Steven Mouyokolo replaced Jarvis who left the field to a tremendous ovation.
A shot from Johnson took a deflection as it went behind and there was a loud cheer as Hahnemann claimed David Silva's corner.
During the four minutes of added time, Balotello was booked for dissent as Wolves held on for the three precious points.
Wolves: Hahnemann, Foley, Ward, Henry (capt), Berra, Stearman, Milijaš (Mancienne 83), Edwards, Doyle, Hunt (Elokobi 65), Jarvis (Mouyokolo 88).
Unused subs: Van Damme, Ebanks-Blake, Fletcher, Hennessey.
Booking: Hunt (59 - foul).
City: Hart, Richards (J. Silva 83), K. Toure (capt), Kompany, Boateng, Y. Toure, Milner, Barry (Johnson 68), D. Silva, Adebayor (Zabeleta 77), Balotelli.
Unused subs: Given, Lescott, Wright-Phillips, Viera.
Bookings: Zabaleta (87 - foul), Balotelli (90+1 - dissent).
Referee: M. Dean.
Blackburn Rovers Academy Under 18s 0 Wolves 3 (McAlinden, Landell, Ismail)
* Tickets for Saturday's trip to Manchester United have now SOLD OUT.