Micah Richards scored a late equaliser at Aston Villa to earn Manchester City a deserved draw in the FA Cup.
Richards celebrated by running into the crowd
Richards, 17, headed home from a corner in the dying seconds of the game.
Milan Baros had given Aston Villa a scarcely deserved lead with a neat right-foot finish after a precise through ball from Steven Davis.
City threatened throughout and Thomas Sorensen saved well from Darius Vassell and Joey Barton while Milner cleared off the line from Richards.
The result was the very least City deserved after Stuart Pearce's team dominated long spells of the match.
And in Richards City had a player who deserved to score after a superb individual performance.
City were particularly rampant in the first half.
Mark Delaney prevented Barton from heading a dangerous cross goalwards but was winded for his troubles, while Vassell shot wide and Georgios Samaras forced a save with a 20-yard strike.
Jlloyd Samuel gifted the game's first gilt-edge opening the way of City.
Antoine Sibierski nipped in as Samuel attempted a back-pass and put Vassell clean through on goal, but the City striker failed to take the ball around Sorensen.
The Villa keeper then made a full-stretch save low to his right after Barton had shot across the face of goal and from the subsequent corner Sibierski almost headed City in front.
In contrast, the home team offered virtually nothing and did not enjoy anything approaching a spell of possession in the opening 30 minutes.
Baros almost got a shot off just after the half-hour mark but as he waited for the ball to drop Barton made a timely interception.
City keeper David James then had to be at his best to clear a dangerous cross but half time arrived with the home team having created hardly anything to encourage their supporters.
Villa improved after the break, finally pressurising the City defence with a series of corners and attacking throw-ins.
Milner volleyed wide from 20 yards, but City continued to show a threat in front of goal and Gavin McCann almost deflected a Kiki Musampa shot into his own net.
James then spilled a free-kick from Milner, but Richard Dunne was the first to react, smashing the ball clear.
The game swung from end to end and Milner made a superb goal-line clearance to prevent Richards scoring with a header from a corner.
And it was Villa who finally broke the deadlock - Baros clinically smashing the ball past James after Davis played him through.
It looked as though the goal would be enough to settle the tie until Richards struck deep into injury time.
Aston Villa assistant manager Roy Aitken:
"We were there and had won the game but you have to keep playing to the last kick of the game.
"All night we were a little bit vulnerable at set plays and it is a big strength in Manchester City's game.
"We have been stressing that we have to be strong at set plays. To lose a goal at the end was frustrating."
Manchester City manager Stuart Pearce on Micah Richards:
"He has impressed in the reserves since the summer and he has been given an opportunity," said Pearce.
"For 90 minutes we knocked on the door and it was the least we deserved but I'm relieved we have got a second chance in this tie.
"We were honest in our endeavour to get the goal, even though we had to wait until the last kick."
Aston Villa: Sorensen, Hughes, Mellberg, Delaney (Ridgewell 45), Samuel, Davis, McCann, Barry, Milner, Moore (Angel 63), Baros.
Subs Not Used: Taylor, Hendrie, Phillips.
Goals: Baros 72.
Man City: James, Richards, Dunne, Distin, Jordan, Musampa, Barton, Sibierski (Croft 80), Riera, Vassell (Wright-Phillips 83), Samaras.
Subs Not Used: Weaver, Sommeil, Ireland.
Booked: Dunne, Barton, Richards, Musampa.
Goals: Richards 90.
Ref: G Poll (Hertfordshire).