Manchester United have been handed a testing Champions League last-16 tie against French champions Paris St Germain.
Premier League leaders Liverpool, meanwhile, will face German giants Bayern Munich, with both Manchester City and Tottenham also set to play Bundesliga opposition.
In the first fixture drawn in Nyon on Monday morning, Premier League champions City were paired against Schalke.
Tottenham, who qualified as runners-up in their group behind Barcelona, will take on current Bundesliga leaders Borussia Dortmund, for whom England teenage forward Jadon Sancho continues to impress.
Following a 3-1 Premier League defeat at Liverpool on Sunday, being paired against runaway Ligue 1 leaders PSG was perhaps not the kindest draw which United boss Jose Mourinho would have been hoping for.
It is, though, the first time the Red Devils will have played the French side, who are unbeaten in their own domestic division this season with some 44 points from 16 league games.
PSG have former United midfielder Angel Di Maria in their squad, as well as Neymar, the world’s most expensive player, and France World Cup winner Kylian Mbappe.
Thomas Tuchel’s side scored 17 goals in their Group C campaign to qualify ahead of Liverpool, but were beaten 3-2 at Anfield during September.
Bayern Munich, meanwhile, have shown form in Europe, winning Group E, despite their lack of consistency in the Bundesliga, where they are third and trail Dortmund by nine points.
Schalke are down in 13th place, and came through Group D as runners-up.
Manchester City director of football Txiki Begiristain said on the club’s social media: “This competition is getting hard. There are big draws and big games coming.
“Teams that are struggling in their league have done very well in the Champions League. German clubs are always very dangerous.”
United, Liverpool and Tottenham were all pulled out first in their draw, so will open up with a home game, while City will be away.
Elsewhere in Monday’s draw, Atletico Madrid will take on Serie A leaders Juventus, Lyon play Barcelona, Roma face Porto while Dutch club Ajax are set to meet holders Real Madrid.
The first leg fixtures will be split over two midweek dates, on February 12/13 and 19/20, with the second legs played over March 5/6 and 12/13.