The Champions League last 16 will feature two fascinating domestic rivalries following the draw ceremony in Nyon, Switzerland on Friday.
Holders Real Madrid face local rivals Atletico Madrid in an all-Spanish affair, while Bayern Munich play reigning Bundesliga champions Bayer Leverkusen in an all-German affair.
Madrid booked their spot in the draw with a comprehensive 6-3 thrashing of Manchester City in the play-off round.
Kylian Mbappe scored a brilliant hat-trick to power Real to a 3-1 victory in the second leg of their tie against Pep Guardiola's side, who failed to make the last 16 for the first time since 2012.
Real and Atletico drew 1-1 in La Liga earlier this month and the tie renews the European rivalry between the clubs. The sides have met six times in the Champions League, including the 2014 final which was won 4-1 by Real after extra time.
Meanwhile, Premier League leaders Liverpool have been paired with French champions Paris Saint-Germain. Fellow Premier League title hopefuls Arsenal take on PSV Eindhoven and Aston Villa will play Club Brugge.
It will be the first time Liverpool have faced PSG since 2018-19, a season when the club went on to be crowned champions of Europe for a sixth time.
The Reds topped the league phase of the competition with seven wins from their eight matches and must now topple the runaway Ligue 1 leaders to progress.
Their first meeting was in the 1997 European Cup Winners’ Cup semi-finals, when PSG won 3-2 on aggregate and lost to Barcelona in the final.
Should Liverpool get past Luis Enrique's side then they could face domestic rivals Villa in the quarter-finals. The two sides played out an entertaining 2-2 draw on Wednesday night.
Villa will first need to get past surprise package Club Brugge, who they lost to in the league phase – one of only two defeats suffered by Unai Emery’s side as they booked their spot in the knockout rounds.
If Arsenal can overcome PSV, they will face the winners of the Madrid derby between Real and Atletico in the last eight.
Elsewhere, Barcelona take on Benfica, while Feyenoord’s reward for knocking out AC Milan is a tie against their city rivals Inter Milan.
Last year’s beaten finalists Borussia Dortmund will go up against French side Lille.
Last-16 draw in full:
Paris Saint-Germain v Liverpool
Real Madrid v Atletico Madrid
Feyenoord v Inter Milan
Borussia Dortmund v Lille
Club Brugge v Aston Villa
PSV Eindhoven v Arsenal
Bayern Munich v Bayer Leverkusen
Benfica v Barcelona
