A hugely committed effort from Connacht was not enough as Jonny Wilkinson guided his Toulon side through to their first Amlin Challenge Cup final.
The big-spending French outfit failed to score in the second half, but their cohesive display in the opening 40 minutes, when Wilkinson kicked 14 points, was enough to seal a place in the final in Marseille on May 23.
Mafileo Kefu scored the only try of the game, racing onto a pass from captain Matt Henjak to gallop in behind the posts in the 11th minute of first-half injury-time.
Connacht scored four penalties through Ian Keatley with hooker Sean Cronin twice going close to scoring a try.
Wilkinson shrugged off an early head injury to knock over three penalties and a drop-goal to establish a 12-6 lead.
Keatley had kicked Connacht ahead after two minutes but Wilkinson levelled on 10 minutes and made it 6-3 when the home side infringed at a ruck.
Flanker Thomas Sourice infringed at the restart to allow Keatley to smack over his second penalty, but an overthrown lineout from Cronin saw Connacht hand those three points back in the form of a Wilkinson drop-goal.
Jamie Hagan was penalised for dropping a scrum and Wilkinson kicked the resulting penalty.
Another Sourice infringement allowed Keatley to make it 12-9, but Toulon powered back to score a try deep in injury-time, following an incredible nine scrum resets.
Referee Wayne Barnes, who missed a Toulon knock-on in the previous phase, watched on as the front rows folded time and again but eventually Henjak sent Kefu through a gap and in behind the posts.
It was a try Toulon's attacking efforts had merited and while Wilkinson converted, Connacht hit back immediately after the break through Keatley's right boot.
With the game back in the melting pot at 19-12, Toulon were able to soak up most of the pressure especially in the final quarter when Wilkinson was withdrawn.
The benches were unloaded in a strength-sapping finale and Toulon survived a couple of scares to seal their final spot.