Saracens overturned a half-time deficit to beat Harlequins and reach their first Premiership final since 2011.
With Sarries down to 13 men temporarily, Ugo Monye crossed for Quins, before Kelly Brown responded.
Mike Brown's try before the interval gave the visitors a 17-11 half-time lead, which was wiped out by Brad Barritt's score after the break.
Chris Ashton added another for a comfortable finish and a place in the final against Northampton Saints.
Quins, who dramatically secured their play-off place with a last-gasp win over Bath last week, competed well for long periods against a Saracens side that have dominated the Premiership this season, finishing nine points clear of everyone else.
But, while Sarries director of rugby Mark McCall was able to rest his whole side in last week's defeat by Leicester, the toil of that narrow win over Bath took its toll on Conor O'Shea's men in the latter stages at Allianz Park.
Saracens were almost undone by their own ill-discipline in the first half, when Marcelo Bosch and Matt Stevens were both shown yellow cards, but showed enough quality after the break to put the pain of two successive semi-final exits behind them and stay on course for a league and European double, with the Heineken Cup final against Toulon to come next week.
In a slow start Nick Evans and Owen Farrell traded penalties in the first 10 minutes, but the game sparked into life when Saracens hooker Schalk Brits tipped Kyle Sinckler over his head, with the television match official deeming the motion to be accidental.
It triggered a swift end-to-end period with Farrell almost going clear, but the England fly-half had to make do with a pair of penalties, hitting one against a post and sending the other over to establish a Sarries lead.
They were soon a man down, with Bosch seeing yellow for lifting up Evans, who put his kick wide, and then Stevens followed his team-mate into the bin for an intentional knock-on.
It seemed the two-man disadvantage would cost Saracens, as Monye made ground down the left flank and, after the ball went through the hands, received it back to cross, Evans adding the conversion.
Saracens still only had 13 men though when flanker Brown showed a turn of pace to tear through a gap and, even though Farrell was off target from the tee, it looked as though the home side were going to escape unscathed.
But, with Bosch back and Stevens still off, Sarries were guilty of over playing and Chris Robshaw got a toe to a loose ball that Quins full-back Brown chased and touched down.
Evans took his conversion on the stroke of half-time, but Quins felt Sarries defenders had attempted to put off their fly-half, which led to words between the sides as they went down the tunnel.
McCall's men wasted opportunities to close the gap from the tee, with Farrell putting a kickable effort wide and Bosch doing likewise from further out.
Danny Care almost extended the Quins lead, but his drop goal struck a post, and, moments later, Saracens were over when an attacking line-out was worked to replacement scrum-half Richard Wigglesworth and then Barritt, who was brought down and not held, so was able to scamper up and across the line.
Farrell found his range, landing the conversion and a penalty, before Bosch thought he had added another try, but he was offside when Farrell charged down a Care box-kick and it was overturned by the television match official.
It was a sign of things to come, though, as combative Quins started to fade and Brown freed Ashton to rampage over, finishing with his trademark swallow dive.
Farrell converted and slotted over another penalty to make it 20 points without reply for Saracens, who now have the chance to reclaim the title they first won three years ago.
Saracens director of rugby Mark McCall:
"The try we conceded just before half-time was an exact replica of the two tries Northampton scored 12 months ago (in last season's semi-final defeat).
"But I suppose this time our reaction to that pretty major setback was magnificent and our second-half performance was outstanding.
"Our reaction to that and going down to 13 was brilliant.
"The squad is really confident at the moment and they front up every single week."
Harlequins director of rugby Conor O'Shea:
"We played outstandingly first half. The intensity was there.
"I talk about margins in games and energy-givers - Danny Care's drop goal (that hit a post) doesn't win us the game but puts us nine points up if it goes over and that gives you a bit more petrol.
"Saracens are an outstanding side. I am unbelievably proud of how our guys fought, even at the end.
"If I look back at this season the two best sides are in the final. Ourselves and Leicester fought tooth and nail to get into the play-off positions. But I guess we ran out of a bit of steam."
Saracens: Goode; Ashton, Bosch, Barritt, Strettle; Farrell, de Kock; Vunipola, Brits, Stevens, Borthwick, Hargreaves, Brown, Burger, Vunipola.
Replacements: Wigglesworth for de Kock (51), Wyles for Strettle (58), Wray for Burger (59), Johnston for Stevens (65), Barrington for M Vunipola (66), Sheriff for Borthwick (68), Hodgson for Farrell (73), George for Brits (73).
Sin Bin: Bosch (25), Stevens (30)
Harlequins: Brown; Williams, Molenaar, Turner-Hall, Monye; Evans, Care; Marler, Ward, Sinckler, Matthews, Robson, Wallace, Robshaw, Easter.
Replacements: Smith for Williams (58), Guest for Wallace (58), Botica for Molenaar (60), Collier for Sinckler (64), Buchanan for Brown (66), Dickson for Monye (66), Lambert for Marler (73), Kennedy for Robson (73).
Referee: Wayne Barnes.