After a drab first-half, the match exploded into life in nine manic minutes at the Etihad Stadium during which City took a two-goal lead through Samir Nasri and Joleon Lescott before Spurs hit back through Jermain Defoe and a wonder strike from Gareth Bale.
Spurs were the better side after that and Defoe was inches away from winning it for them when he got his studs on the end of a Bale cross a minute before the end of regular time.
City went right down the pitch after that scare and won a penalty when Mario Balotelli was bundled over by the returning Ledley King. The Italian sent Brad Friedel the wrong way to seal all three points for the league leaders with virtually the last kick of the game.
Joe Hart - 5
Poor understanding between him and Stefan Savic led to Spurs' opening goal, when Jermain Defoe nipped in before rounding Hart. Was generally assured otherwise; could not have done anything with Gareth Bale's wonder strike.
Micah Richards - 6
Went on a few thundering runs and might well have scored if not for a magnificent clearance by Scott Parker. Did have problems against Bale in the second-half though and struggled to contain the movement of the pacy Welshman.
Stefan Savic - 3
Had a nightmare. Was largely at fault for Spurs' opening goal and completely at sea against the slippery Jermain Defoe. Roberto Mancini cannot get Vincent Kompany back soon enough.
Joleon Lescott - 5
Gets a low rating because he really should have been sent off for a blatant elbow into the face of Younes Kaboul. Covered well for the ineffective Savic, or else Spurs would have scored a lot more than two.
Gael Clichy - 6.5
Was troubled by Aaron Lennon early in the game, but grew in stature in the second half. Was not afraid to go in for the tackle and did well to keep him at bay for the majority of the game.
Gareth Barry - 7.5
Kept close tabs on Rafael van der Vaart, and almost played the Dutchman out of the game. Luka Modric got no joy out of the former Aston Villa man either. Good, solid stuff from Barry and crucial given the absence of captain Kompany at centre-back.
James Milner - 7
Ensured David Silva got enough of the ball and was neat with his distribution - not wasting too many chances to send his side forward.
David Silva - 9
Man of the match. Was the only one who showed any spark in an overall poor first half and finally unlocked the Spurs defence with a delicious through ball for Samir Nasri to run on to and score. Kept pulling the strings right until the very end. Mancini truly has a gem on his hands.
Samir Nasri - 7
Had one of his better matches in the City shirt since his move to Eastlands, making some great runs - one of which resulted in the opening goal. Still neglects his defensive duties though - something that might well cost his side had it not been for the excellent efforts of Barry and Clichy.
Sergio Aguero - 8.5
After Silva, it was he who looked most likely to make things happen and deserved a goal for his efforts. Switched between a false nine and out-and-out striker - looking to link up play between the midfield and Eden Dzeko. A sparkling performance.
Edin Dzeko (off 65') - 4
Was quite ineffective against Younes Kaboul, failing to create any opportunities for his side. Rightly subbed by Mancini in the 65th minute.
Mario Balotelli (on 65') - 7
It's nearly impossible to fairly rate a man who might have stamped deliberately on Scott Parker, but then won and put away the penalty that earned his side a priceless three points. For sheer drama, impact and for grabbing the headlines yet again, he gets a seven.
Brad Friedel - 6.5
Did fairly well when claiming high balls, but there was little the American could do with City's three goals.
Kyle Walker - 5
The adventurous youngster started the game fairly well, and regularly looked to bomb forward to support his attackers.
However, he often neglected picking up his direct opponent, leaving Tottenham exposed at the back.
Younes Kaboul - 7
Won virtually every aerial challenge he decided to partake in, and completely nullified the threat of Dzeko.
Ledley King - 5.5
An unconvincing return to the Spurs starting XI after a month out, capped off in injury time when he clumsily brought down Balotelli in the box, costing his side what would have been a deserved point.
Benoit Assou-Ekotto - 6.5
An average game from the French-born Cameroonian, who failed to offer Spurs much going forward.
At the back, Assou-Ekotto didn't really put a foot wrong, but could have shown greater understanding with his centre-backs.
Aaron Lennon (off 88') - 6.5
Lennon failed to provide his normal penetration against Clichy, who recovered from a slow start to mark his opponent out of the game. Did however provide an assist for Bale's goal.
Scott Parker - 8
One of Spurs' better players, as he has been all season long. Put his body on the line on numerous occasions, and never game the Citizens time to dwell on the ball, snapping at their ankles with strong but fair challenges.
Luka Modric - 7.5
Did well as the link between midfield and attack, but his passing wasn't at his best today. Probably would have preferred if he had the ineligible Emmanuel Adebayor to aim for, as opposed to the dimunitive Defoe.
Gareth Bale - 8
Quiet first half from the Welshman, although he provided the goal of the match when struck an unstoppable curling effort first time into the top corner of the City goal.
After which, he came into the game and almost laid on a third for Tottenham when he burst into the box before crossing the ball for Defoe, who failed to direct his shot on target.
Rafael van der Vaart (off 67') - 6
Quiet from the Dutchman. No surprise he was taken off midway through the second period.
Jermain Defoe - 7.5
Did well to score Tottenham's first although it was laid on a platter for him, after he raced onto a poor header from Savic and rounded Hart before finding the net.
However, the England international failed to offer Tottenham any presence up front.
Jake Livermore (on 67') - 5.5
Was brought on in place of Van der Vaart to shore things up in the Spurs midfield, but he made the opposite impact, giving up possession easily with a couple of aimless passes.
Steven Pienaar (on 88') - N/A
Insufficient time to make an impact.