Fetu’u Vainikolo scored a superb individual try as Exeter Chiefs recovered from a nightmare start at The Rec to book their spot in the LV= Cup final.
Leroy Houston’s try – the fastest in LV= Cup history – was cancelled out by Luke Arscott before the break.
And Arscott grabbed his second after half-time before a brilliant try from replacement Vainikolo sealed Exeter’s first victory over Bath in the professional era.
Bath struck after just 24 seconds when Nick Abendanon broke the Exeter line immediately after the kick off and offloaded to Horacio Agulla.
The Argentina winger was halted short of the line but he popped the ball to Houston to finish the job, with Tom Heathcote adding the extras.
A delightful grubber from Henry Slade had Bath under pressure just two minutes later, Ian Whitten collecting neatly, but the hosts escaped by forcing a knock-on.
The visitors continued to threaten and Slade reduced the arrears with a simple penalty after eight minutes, before a frantic start eventually settled down.
Abendanon was pulling the strings for Bath and the Chiefs defence looked vulnerable on more than one occasion, Semesa Rokoduguni and Ollie Devoto each breaking the line inside 20 minutes.
Heathcote was next to be handed a straightforward penalty, restoring Bath’s seven-point lead, and it was only Exeter’s gritty resilience inside their own 22 that prevented a second try, following Martin’s Roberts’ scything break.
Exeter bounced back and, with their tails up, worked a dangerous opening only for Gavin Henson not to release in the tackle – the Bath centre sent to the sin bin for his troubles.
And it took just two minutes for the numerical advantage to pay off, as neat interplay out wide allowed Tom James to send Arscott across the whitewash – but Slade’s conversion flew wide.
Bath’s heavy penalty count continued to grow but Slade opted for the posts from 40 yards and missed again, before Heathcote showed his opposite number how it is done five minutes before the break.
Heathcote began the second half as he finished the first, bisecting the posts with a tricky penalty on 48 minutes, but he was soon involved in Exeter’s second try.
An ambitious chip from inside the Bath 22 fell to Arscott and the full-back powered through a pair of defenders to score under the posts, Slade’s conversion bringing them within one point.
And a piece of individual brilliance from Vainikolo put the Chiefs ahead after 58 minutes, the Tongan international bursting through two tackles before accelerating away to score – Slade added the simple conversion.
Heathcote preserved his flawless afternoon from the tee five minutes later and Slade continued to trail in his wake, missing yet another penalty shortly after.
But the Bath fly-half sent a last-gasp penalty just short to ensure Exeter will meet Northampton Saints at Sandy Park next weekend.