Juventus secured their place in the Champions League final after coasting to a 2-1 win over Monaco in Turin, advancing 4-1 on aggregate.
The Serie A leaders never looked like letting slip a 2-0 advantage from the first leg, and tightened their grip on the tie when Mario Mandzukic put them ahead after 33 minutes.
Brazilian defender Dani Alves crashed in a superb second just before half-time.
Monaco’s 18-year-old forward Kylian Mbappe netted a consolation in the 69th minute as Massimiliano Allegri’s impressively organised Italian side booked their place at Cardiff’s Millennium Stadium on 3 June.
Monaco, who were this season’s surprise contenders after coming through qualifying to reach the last four, were forced into an unplanned change when winger Nabil Dirar suffered a problem in the warm-up and was replaced by Benjamin Mendy.
The Juve fans confidently unfurled a banner which read ‘Time For Cardiff’ as Monaco looked to become the first team to overturn a two-goal semi-final deficit after losing at home.
The French side almost got off to the perfect start when Mbappe knocked the ball past veteran Juve goalkeeper Gianluigi Buffon but his effort came back off a post and the offside flag meant it would not have counted anyway.
German midfielder Sami Khedira, who missed the first leg through suspension, was forced off after just 10 minutes with what looked like a hamstring problem.
Despite their two-goal advantage, Juventus remained on the offensive as Mandzukic forced a smart save from Monaco keeper Danijel Subasic after being played into the left side of the penalty area.
Juve finally took the lead after 32 minutes and all but secured their place in the final.
Alves whipped the ball into the Monaco box from the right towards Mandzukic, whose header was saved before the Croatian lashed the rebound past Subasic.
The hosts soon had the ball in the net again through Gonzalo Higuain, but the offside flag was raised for what looked a marginal call.
There was a minor scare at the other end when Juventus saw their defence, which was on a run of more than 11 hours without conceding a Champions League goal, stretched as Mbappe almost got on the end of a low cross from Mendy before Giorgio Chiellini guided the ball behind.
Just before half-time, Juventus doubled their lead with a superb strike from Alves. A corner was punched out by Subasic and as the ball dropped to Alves 25 yards from goal, the former Barcelona defender volleyed it into the net before taking the deserved plaudits of the Turin crowd.
Monaco had seen off the likes of Tottenham, Manchester City and Borussia Dortmund in their run to the semi-finals, but this was a match too far for Leonardo Jardim’s exciting young team, who lead Ligue 1 ahead of Paris St Germain.
With Juventus having done the job, the second half lacked much tempo.
As the hour mark approached, Paulo Dybala was replaced by Juan Cuadrado, and the winger almost had an instant impact when getting away down the right but blasted wide.
Monaco netted a consolation after 69 minutes when Mbappe converted a cross from Joao Moutinho for what was an impressive sixth Champions League goal by the France youngster.
There was a flashpoint when Higuain appeared to be stamped on by Kamil Glik as the striker made a sliding challenge, but no action was taken by the Dutch referee Bjorn Kuipers.
Juventus, though, were happy to have already taken the sting out of Monaco’s free-scoring front line as the Old Lady prepared for a date against either Real or Atletico Madrid in Wales next month.