After surviving some nervy moments in Moscow, we progressed to the semi-finals of the Europa League with two second-half goals.
Danny Welbeck struck an all-important goal with 15 minutes remaining to finally end the Russians' resistance, after they had got themselves within one goal of a shock comeback. Aaron Ramsey then raced away on the break in injury time to level on the night.
Arsène Wenger said in his pre-match press conference that not conceding an early goal was the first priority, and we managed to keep the hosts at bay in an uneventful, scrappy opening 20 minutes.
The enthusiastic home fans were providing most of the entertainment, with neither side able to keep possession for very long. In fact there were very few chances at all in the opening half hour. Alexandre Lacazette's charged down shot was the only incident of note.
But late in the first half CSKA took the lead with their first effort. Petr Cech got down well to palm away Kirill Nababkin's header, but Fedor Chalov was lurking in the right place to tuck home from close range. Game on.
The Russians were energised and nearly reduced the deficit further when Kristijan Bistrovic struck just over from 20 yards.
We held on until half-time, but were by no means sitting comfortably. Moscow finished the half strongly, and started the second even better. Nababkin finished well at the far post, pouncing on Cech's initial parry.
The VEB Arena was bouncing now. Cech got down well to save a Golovin free-kick with the Russians well on top, knowing one more goal would send us out.
Mohamed Elneny had a headed goal ruled out for offside, before we moved to a back five in a bid to preserve the overall advantage.
The defence was coming under increasing pressure, but in an instant Welbeck relieved the stress. He created the opening himself with a superb turn on the touchline, played a one-two with Elneny, then clipped the ball past the keeper inside the area. A priceless away goal to cancel out CSKA's from the Emirates last week.
It knocked the stuffing out of the hosts, and Ramsey raced through late on to compound their misery, finishing coolly one-on-one with Igor Akinfeev.
WHAT IT MEANS
We will be in the hat for the semi-final draw on Friday, when will meet either Red Bull Salzburg, Marseille or Atletico Madrid over two legs on April 26 and May 3.
It's a quick turnaround as we travel to Newcastle on Sunday for a 1.30pm kick-off in the Premier League. This is the third time this season we have followed a European away game with an away domestic game. We won the previous two (against Everton in October and Burnley in November).
This is the eighth time Arsenal have reached the last four of a European competition, we have won six of the previous seven, never losing to continental opposition. The previous occasions were…
1970 We beat Ajax 3-1 over two legs in the Fairs Cup, and went on to win our first European honour, defeating Anderlecht in the final.
1980 Arsenal became the first English side to beat Juventus away, winning 2-1 over two legs, but lost to Valencia on penalties in the Cup Winners' Cup final.
1994 French side Paris Saint-Germain are defeated 2-1 on aggregate, and we went on to lift the Cup Winners' Cup with a 1-0 win over Parma
1995 We needed penalties to beat Sampdoria in the second leg in Italy, after a 5-5 aggregate draw. We lost -21 to Real Zaragoza in the Paris Cup Winners' Cup final.
2000 Home and away wins gave us a 3-1 aggregate win over Lens, but we lost the UEFA Cup final to Galatasaray on penalties after a goalless draw.
2006 Jens Lehmann saved a last-minute penalty against Villarreal as we edged them out with a 1-0 aggregate win in the Champions League. Barcelona won the final 2-1.
2009 Our most recent semi-final was our only defeat, 4-1 on aggregate to Manchester United in the Champions League.
Copyright 2018 The Arsenal Football Club plc. Permission to use quotations from this article is granted subject to appropriate credit being given to www.arsenal.com as the source.