Real took an early lead in the 20th minute when Ronaldo finished off a flowing counter-attack but Juventus hit back seven minutes later with a skillful overhead kick from Mario Mandzukic.
But Casemiro fired Real Madrid back in front in the second half and Ronaldo bagged his second goal of the night.
Zinedine Zidane's side clinched La Liga on the final Sunday, meaning they have now won the domestic league and European Cup double for the first time since 1961.
In his absence, Spanish global Isco shone, he helped Los Blancos secure their first La Liga title since 2012 and scored the all-important away goal in the semi-final second leg against city rivals Atletico Madrid last month.
And Zidane's men retook the lead just after the hour mark when Toni Kroos had a shot blocked and Casemiro latched on to the loose ball 35 yards out, firing in a shot which took a huge deflection off Sami Khedira to deceive Buffon.
Any hopes of a Juventus comeback were ended when substitute Juan Cuadrado was sent off 18 minutes after coming on, the winger receiving a second yellow card for a clash with Sergio Ramos, before Madrid substitute Marco Asensio put the icing on the cake in the last minute.
There was nothing lucky about the third, Ronaldo making a superb run to the near post to bury Luka Modric's right-wing cross from close range soon afterwards.
According to Sky Sports, Juventus conceded more goals in the one match than they did in the entire competition leading up to it. Juventus has been the runner-up in their last five European Cup finals, last winning the Champions League in 1995-96.