Just as they came from behind with three second half goals to crush Sporting 3-1 in Wednesday's UEFA Cup final to became the first Russian club to lift a European trophy, once again CSKA showed stamina and determination against their arch-rivals.
Russia winger Denis Boyarintsev headed Spartak ahead in the 29th minute after being left unmarked in front of CSKA's goal.
But CSKA, missing injured skipper Sergei Ignashevich and suspended Brazilian striker Vagner Love, came out firing after the break, scoring twice in the first 15 minutes.
World Cup
Queiroz calls for Klinsmann to resign over “outrageous remarks”
Brazilian playmaker Daniel Carvalho, voted the UEFA Cup MVP, again played a key role in turning the game around as he assisted two of the three goals.
Croatia striker Ivica Olic sealed victory for the army club six minutes from time.
CSKA coach Valery Gazzayev said: "We've had many problems preparing for this game. We've had a couple of days to celebrate and that's what our players did, some of them probably a bit too much.
"Also we had Ignashevich injured and Love suspended, but after meeting the (Russian) President yesterday we knew we couldn't afford to lose and we fought as hard as we could."
Gazzayev also had kind words for German referee Florian Meyer, who on Sunday became the first foreigner to officiate a Russian league match.
"He was neutral to both teams and that was the main thing and he also did not disrupt the flow of the game with too much whistling," the coach said.
Spartak's Latvian coach Alexander Starkovs said: "They are a classy team and showed it by winning the UEFA Cup. Tonight they punished us for our mistakes and deserved their victory."
The win lifted CSKA, on 11 points from six matches, into ninth place, although they have three games in hand on most of the leaders. Spartak, with 16 points after nine games, dropped from first to third.
The game between Moscow's two most popular clubs, whose fans are considered the most violent in Russian soccer, was played amid tight security in a near 60,000 crowd at Luzhniki Olympic stadium.
No major incidents were reported during the match, but afterwards police said they had arrested about 50 fans, mostly for drinking.
It was the second of two Moscow derbies at Luzhniki on Sunday, with champions Lokomotiv beating Torpedo 1-0 in the earlier game.
Ten Hag wants Gakpo at Man Utd as Ronaldo replacement, Leao a £100m target - Paper Round
World Cup
'First final for us' – Flick expects Germany to play against Spain with a certain mindset