Manchester City are through to the semi-finals of the Champions League for only the second time after sealing victory over Borussia Dortmund in the last eight courtesy of comeback win in Germany.
Holding a 2-1 lead from the first leg, City found themselves needing to chase the tie when 17-year-old England international Jude Bellingham curled in a superb shot from the edge of the box.
Stung by the concession, the visitors threw everything they could muster at the German side, with Kevin de Bruyne smashing an effort off the bar before Mahrez saw a shot blocked on the line by the brilliant Bellingham.
The crucial breakthrough for City came early in the second half as Emre Can was penalised for handling in the box and Mahrez stepped up to fire his side ahead again in the tie.
Phil Foden sealed it, adding to the late goal he scored at the Etihad to give his side their first-leg lead with a fierce drive that found the Dortmund goal via the post.
City will face Paris St-Germain in the semi-finals, with the French side having eliminated holders Bayern Munich on Tuesday.
It is the first time City have reached the semis under current boss Pep Guardiola, who twice won the competition during his time as manager of Barcelona.
Their previous appearance in the last four came in 2015-16, when they were knocked out by Monaco in Manuel Pellegrini’s final season in charge.
The defeat likely ends Dortmund’s hopes of playing in next season’s Champions League, with them fifth in the Bundesliga, seven points behind fourth-placed Eintracht Frankfurt.