Liverpool will face Paris St-Germain in the Champions League last 16, while Arsenal take on PSV Eindhoven and Aston Villa will play Club Brugge.
Holders Real Madrid face local rivals Atletico Madrid and Bayern Munich play Bayer Leverkusen in an all-Germany affair.
It will be the first time Liverpool have faced PSG since 2018-19, when the Reds went on to be crowned champions of Europe for the sixth time.
The winners of that tie will face Aston Villa or Club Brugge in the quarter-finals, while Arsenal will meet record 15-time winners Real Madrid or Atletico Madrid in the last eight - should they get past PSV.
The two-legged last 16 ties will be played on 4-5 March and 11-12 March.
Last-16 draw in full
Paris St-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
Liverpool & Villa on European collision course
Premier League leaders Liverpool against defending French champions Paris St-Germain promises to be an intriguing tie.
PSG looked to be heading out of the competition before a late run of form saw them finish 15th in the league phase.
They lost to Arsenal before defeating Manchester City to set up an all-France knockout phase play-off with Brest which they won 10-0 on aggregate.
PSG have Ousmane Dembele who is one of the in-form goalscorers in Europe right now and has six goals in this season's competition.
If Liverpool get past Luis Enrique's side, then they will face Premier League rivals Aston Villa as long as they see off defending Belgian champions Club Brugge, who finished 24th in the league phase before defeating Atalanta in in the knockout phase play-offs.
However, Club Brugge beat Villa in the league phase, one of only two defeats suffered by Unai Emery's side.
Arsenal's opponents PSV Eindhoven are defending Dutch champions, who defeated an under-strength Liverpool side 3-2 in January on their way to finishing 14th in the league phase.