Manchester United face a second straight trip to Spain after they were paired with Real Betis in the Europa League last 16 draw on Friday.
United eliminated La Liga leaders, Barcelona, in a blockbuster tie in the last round.
Betis are 22 points and four places further back in the table and they still pack a threat and received a bye to this round because they won their group ahead of Roma.
Premier League leaders Arsenal drew Sporting Lisbon.
Juventus were paired with Freiburg of Germany in a matchup that represents an unlikely reversal of fortunes.
Freiburg are unexpectedly fourth in the Bundesliga and heading for Champions League qualification.
Juve are seventh in Serie A after a 15-point deduction and the Europa League, which would be a fourth in the competition, represents their best changes of returning to Europe's top table next season.
Betis' neighbours, Sevilla, the most successful club in the competition with five titles, face Fenerbahce.
Jose Mourinho's Roma, who won the 2022 Europa Conference League, face a third Spanish club in the last 16, Real Sociedad.
The only meeting of former winners of the competition pairs Shakhtar Donetsk, playing in exile after the Russian invasion of Ukraine, against Feyenoord.
Union Berlin and Swiss club Union Saint-Gilloise meet in a tie between two clubs who have never reached a European quarter-finals.
The pairing is a rematch from the group stage where both games were 1-0 wins for the away club.
The quarter-finals will be held on April 13 and 20, the semi-finals on May 11 and 18.
Ties to be played on March 9 and 16.