Chelsea will face Atletico Madrid in the Champions League last 16, while Liverpool play last year’s semi-finalists RB Leipzig.
Chelsea face a tough tie against Diego Simeone’s side, who are second in La Liga, level on points with Real Sociedad with two games in hand.
Manchester City will play German side Borussia Monchengladbach, who are in the Champions League knockout stages for the first time in their history.
The ties will take place over two legs, with seeded group winners playing away in the first legs and at home in the return matches.
Liverpool will play RB Leipzig; Barcelona draw Paris Saint-Germain in the Round of 16 to take place in February and March next year.
Full draw
Borussia Monchengladbach v Manchester City
Lazio v Bayern Munich
Atletico Madrid v Chelsea
RB Leipzig v Liverpool
Porto v Juventus
Barcelona v Paris St-Germain
Sevilla v Borussia Dortmund
Atalanta v Real Madrid