Saracens saw their Heineken Cup hopes blown away as French side Clermont Auvergne reached the last four for the first time.
Clermont took an early 9-0 lead through the boot of Brock James.
Saracens hit back with an Owen Farrell penalty but early in the second half Wales full-back Lee Byrne finished off a fine team try for Clermont.
James converted and added a drop-goal and penalty to secure a semi-final against defending champions Leinster.
The game will be played at the Stade Chaban-Delmas in Bordeaux on Sunday 29 April, with Clermont looking for revenge for their agonising 29-28 quarter-final defeat by the Irish province two seasons ago.
Their victory also means there are no English sides left in European competition this season.
Both Saracens and their visitors showed width and ambition in their opening attacks but Clermont's pack gained the upper hand in the scrum and that enabled them to quickly get the scoreboard ticking over.
Once they had pulled clear Saracens were forced to play a more open game than they would have preferred and although the hosts showed plenty of endeavour, they lacked the cutting edge required to overhaul a quality Clermont outfit.
The French side lost fly-half David Skrela to a leg injury only two minutes into the game but his replacement, James, landed two early penalties.
And when Saracens were penalised for collapsing a scrum on the halfway line, James drilled the ball between the sticks to make it 9-0 after 12 minutes.
However, Saracens have a clinical goal-kicker of their own in Farrell and the young Englishman bisected the sticks from near the right touchline to get Saracens on the scoreboard.
Both kickers then lost their bearings, James missing two kicks and Farrell one, and with rain making handling tricky, both sides resorted to a kicking game.
Saracens - defending English champions and currently second in the Premiership - base much of their approach on an accurate kicking game but a lack of precision meant they struggled to put the visitors under sustained pressure.
After the lively start to the game running rugby had been at a premium but five minutes into the second half Clermont exploded into life.
Former Scotland second row Nathan Hines off-loaded to Aurelien Rougerie and the Clermont captain powered clear before feeding Morgan Parra, who sent Byrne cantering over in the corner.
James converted and three minutes later drilled over a long-range drop-goal to take the lead out to 19-3 and send the vocal Clermont fans into ecstasy.
Saracens had just over half an hour to turn things around and they tried to inject some pace into their attack but James nudged the visitors further ahead with his fourth penalty.
Saracens launched a sustained late assault, with Schalk Brits and Jackson Wray prominent, but Clermont's defence was impregnable and Brian O'Driscoll and co know they will face a real battle when defending champions Leinster travel to south-west France for the semi-final.
Clermont fly-half Brock James: "We have talked a lot more this year as a group about wanting to achieve something in this tournament.
"Obviously we've taken the next step now into the semi-finals but we've got a difficult match to come against Leinster - we're obviously keen to get stuck into them."
Saracens boss Mark McCall: "You could almost see the difference in the salary caps (£7.2m in France compared to £4.2m in England) as you looked down on the pitch at various times today, there is no question about that.
"The squad they were able to bring is outstanding and the stats don't lie. It is getting increasingly difficult to get into the quarter-final stages.
"For England to have absolutely no involvement in the semi-finals of the Amlin or the Heineken Cup speaks for itself."
Saracens: Goode; Strettle, Farrell, B Barritt, Wyles; Hodgson, Wigglesworth; Gill, Brits, Stevens, Borthwick, Botha, Melck, Fraser, Joubert.
Replacements: Short for Farrell (55), Powell for Wyles (69), De Kock for Wigglesworth (55), Vunipola for Gill (60), Nieto for Stevens (69), Kruis for Botha (55), Wray for Melck (51), George for Fraser (67).
Clermont Auvergne: Byrne; Sivivatu, Rougerie, Fofana, Malzieu; Skrela, Parra; Faure, Kayser, Zirakashvili, Cudmore, Hines, Bonnaire, Lapandry, Vermeulen.
Replacements: James for Skrela (3), Radoslavjevic for Parra (77), Debaty for Faure (50), Paulo for Kayser (60), Kotze for Zirakashvili (57), Pierre for Cudmore (57), Bardy for Vermeulen (55).
Not Used: Buttin.
Ref: A Roland (IRFU).