Racing 92 or Exeter Chiefs will be crowned champions of Europe for the first time after beating defending champions Saracens and Toulouse respectively on Saturday.
Juan Imhoff's brilliant late try secured a 19-15 victory for Racing in the first semi-final at La Defense Arena, ending Sarries' hopes of winning the Champions Cup for the fourth time in five seasons.
Five Alex Goode penalties gave Saracens – relegated from the Premiership for salary-cap breaches – a lead of six points with 13 minutes to go in Paris.
Maxime Machenaud struck Racing's fourth penalty of the game following three from Teddy Iribaren to reduce the deficit and Imhoff raced away to score four minutes from time after taking a pass from Virimi Vakatawa, who was picked out by a clever Finn Russell kick.
Machenaud converted and the 2016 and 2018 runners-up held on to dump out Sarries, who lost captain Brad Barritt to injury in the final quarter of a gripping contest.
Exeter will play Racing in their first Champions Cup final on October 17 at Ashton Gate, Bristol after defeating Toulouse 28-18.
The Chiefs kept their Premiership and Champions Cup double dreams alive with a powerful performance, Harry Williams scoring two of their four tries at Sandy Park.
Joe Simmonds scored a try and eight points from the tee, while his brother Sam also crossed to deny four-time European champions a place in an all-Top 14 showdown.
Alban Placines and Matthis Lebel scored Toulouse's tries, the latter coming when the damage had already been done.