Lionel Messi scored twice and set up two more as Barcelona reached the Champions League quarter-finals for a record 12th consecutive year with a last-16 win over Lyon.
Treble-chasing Barca, who drew 0-0 in the first leg, led when Messi chipped home a penalty.
Philippe Coutinho tapped into an empty net from Luis Suarez’s unselfish pass before Lucas Tousart’s volley gave Lyon hope.
Messi clinched the game with a run and finish before assisting late strikes from Gerard Pique and Ousmane Dembele.
Barcelona will discover their quarter-final and potential semi-final opponents on Friday at 11:00 GMT.
Manchester City, Manchester United, Liverpool, Tottenham, Juventus, Ajax and Porto are their potential rivals.
The night after his old rival Cristiano Ronaldo scored a hat-trick to help Juventus knock out Atletico Madrid, captain Messi put in a sensational performance of his own as Barca joined the last eight.
He was sublime right from the start as he had a shot saved in the fourth minute after a good Barca move.
He opened the scoring with a cheeky Panenka-style penalty after Jason Denayer clipped Suarez in the box.
At that stage the La Liga leaders looked in control, but Tousart gave them a fright when he volleyed home after Sergio Busquets’ poor headed clearance.
But Messi stepped up when his team needed him, running 30 yards and stepping inside two defenders – including sending Marcelo to the ground – before firing past substitute keeper Mathieu Gorgelin, who should have done better.
It was the 31st time he has scored at least two goals in a Champions League game. The Argentine is this season’s joint top scorer on eight with eliminated Bayern Munich striker Robert Lewandowski.
At that stage they started to pull away and Messi charged forward from the halfway line before squaring it to centre-back Pique, who had come forward in open play looking for a goal, to slide in at the back post.
And late on Messi picked out substitute Dembele who placed the ball through Gorgelin’s legs.
Messi has now been involved in at least four goals in five different Champions League matches, including when he hit five against Bayer Leverkusen in 2012.