Seydou Doumbia struck twice in the first half to give the Russians a shock lead and the Premier League champions imploded in the second half, receiving two red cardsSeydou Doumbia did the damage as CSKA Moscow claimed a shock win at the Etihad Stadium to send nine-man Manchester City to the bottom of Group E and leave them on the brink of another humiliating Champions League exit.
Doumbia silenced the home crowd two minutes in, escaping the attentions of Yaya Toure to head Natcho's free-kick past a helpless Joe Hart, only for a superb Toure free-kick to haul City level six minutes later.
But a poor clearance from Gael Clichy allowed Natcho to supply Doumbia for a clinical second on 34 minutes, and City's lacklustre attempts to fight back in the second half resulted in red cards for Fernandinho and Toure.
The Brazilian was sent off for two bookable offences after coming on at half-time and then Toure was shown a straight red card for inexplicably shoving over Roman Eremenko as the Premier League champions lost the plot.
City were furious that Pontus Wernbloom was not shown a second yellow card in the second half, with Sergei Ignashevich instead booked in what appeared to be a case of mistaken identity.
Doumbia has proved to be City's nemesis, having now scored five goals in his last three games against them and his brace on Wednesday leaves Manuel Pellegrini's side's chances of progressing from Group E looking bleak.
Victory for the Russian champions was their first in England and moved them above City, level on four points with Roma, with two games remaining.
City slump to the bottom with only two points and with Bayern Munich, who qualified on Wednesday, and Roma to play in the final two games they have it all to do, while CSKA will now be eyeing a place in the last 16.
Pellegrini named the same side that started Sunday's derby victory over Manchester United, while Wernbloom and Alan Dzagoev returned to the CSKA starting line-up after serving three-match bans.
The home fans would have been expecting a positive start from City with so much at stake, but they were stunned into silence when CSKA took the lead after only two minutes.
Gael Clichy was harshly penalised for handball and an unmarked Doumbia got on the end of the resulting free-kick from Bibras Natcho with a powerful header as Martin Demichelis and Toure stood and watched.
Toure made amends for that slack defending just six minutes later, when he curled a measured free-kick over the wall and into the net after Stevan Jovetic had been upended just outside the penalty area.
The Russian champions took that setback in their stride and should have been back in front when Dzagoev's incisive pass with the outside of his foot sent Doumbia clear, but the striker fired just wide of the far post from the edge of the area.
Sergio Aguero forced a save from Igor Akinfeev at his near post, but City were vulnerable at the back and they were punished again 34 minutes in when Doumbia struck again.
Clichy's dreadful attempted clearance went straight to Natcho, who picked out Doumbia and he picked his spot to beat Joe Hart with a clinical right-foot finish.
Pellegrini responded to his side's poor first-half display by replacing Jesus Navas and Jovetic with Samir Nasri and Fernandinho.
Akinfeev denied James Milner with his feet just after the hour-mark after Toure had played the England midfielder in, but there remained a lack of urgency from a disjointed City side.
And City's hopes of mounting a fightback looked even more remote when Fernandinho was shown a second yellow card after 69 minutes for blocking Ahmed Musa.
Georgi Milanov almost added a third goal when he curled the resulting free-kick just wide, then Akinfeev raced off his line to thwart Edin Dzeko when the big striker raced clear.
City were baffled when referee Tasos Sidiropoulos failed to show Wernbloom a second yellow card 13 minutes from time pulled back Aguero, but Ignashevich was cautioned.
Toure then let his frustration get the better of him as he pushed Eremenko over nine minutes from time to add insult to injury before Aguero was booked for diving when City wanted a penalty right at the death.