Arsenal will discover their next Champions League opponents when the draw for the knockout stage is made in Nyon, Switzerland on Monday.
Arsène Wenger's side finished second behind Borussia Dortmund in Group F and will face a group winner in the last 16.
However, they cannot play teams from their own football association at this stage of the competition - nor a team they have already faced in the group stage - so that rules out Manchester United, Chelsea and Dortmund.
Arsenal's possible opponents are:
Read on to see how they qualified...
The Spanish champions eased through their group with 13 points from a possible 18 under new manager Gerardo Martino. Arsenal met Barcelona in the last 16 in the 2011/12 season with the Catalan side winning 4-3 on aggregate.
Carlo Ancelotti's team have arguably been the most impressive side in the Champions League so far, scoring 20 times with Portuguese star Cristiano Ronaldo netting a record nine goals in the group stage. Arsenal beat Madrid 1-0 on aggregate the last time the two sides met.
The holders, who knocked out the Gunners last season, sealed their passage to the knockout stages after just four games. But Pep Guardiola's team came close to finishing second in Group D after losing 3-2 to Manchester City in their final game.
The French side had already confirmed their place in the last 16 going into the final round of matches and were able to rest star striker Zlatan Ibrahimovic, who netted eight times during the group stages.
Atletico Madrid eased through Group G without a defeat, beating former holders FC Porto twice along the way. Los Rojiblancos have the joint best defensive record in the competition so far, conceding just three goals.