Bath grabbed a bonus-point victory to cement their third place in the Aviva Premiership after Wasps pushed them all the way in a roller coaster of a game.
The visitors' strong, inventive running posed huge problems for a sluggish home defence throughout but Bath had enough firepower themselves to see off the challenge and come through as 32-25 winners.
Right wing Anthony Watson grabbed two tries and others went to Nick Abendanon and Kyle Eastmond. Fly-half Tom Heathcote kicked two penalties and three conversions.
Wasps' tries were scored by wing Will Helu, number eight Nathan Hughes and full-back Elliot Daly, with fly-half Joe Carlisle kicking the rest of their points. They had to be content with a losing bonus point as they continue to scrap for a top-six finish in the hope of qualifying for a revamped European competition next year.
Bath were forced to dig a little deeper into their playing resources as international recognition followed their success across all competitions this season. Nathan Catt and Juan Pablo Orlandi came in at prop and Dominic Day at lock.
There was rather more attention on the fly-half position where Heathcote deputised for George Ford, promoted to the England bench at Twickenham.
Wasps, also missing England second row Joe Launchbury, were still without fly-half Andy Goode who is still a week or two away from a comeback after knee problems.
The visitors handed Bath an easy scoring opportunity from the kick-off when Kearnan Myall misjudged his leap and Heathcote kicked a penalty when Ashley Johnson offended at the breakdown.
Wasps quickly threatened themselves as Helu's arcing run from the right gave James Haskell a sniff of the line and hooker Tom Lindsay was then held up under the posts. But Francois Louw twice won turnovers to put his side back on the front foot.
Heathcote missed with a fifth-minute penalty attempt from 40 metres and Myall stopped Ollie Devoto just metres short of the try-line to earn a scrum put-in.
But Hughes knocked on at the base and Bath took full advantage from the scrum as Eastmond drew two defenders for Watson to spin out of James Short's tackle and score in the corner.
While Heathcote was wide with the conversion, Carlisle's accurate boot made certain of two penalties at the other end to leave Wasps just two points adrift at 8-6 after 22 minutes.
It was fair reward for some strong ball-carrying, cleverly prompted by Carlisle, but indiscipline at the breakdown continued to hurt them and Heathcote soon edged Bath further ahead.
Back came Wasps with a bullocking run by Johnson but Charlie Davies flung a loose pass to Watson who raced 70 metres for an intercept score, converted by Heathcote.
Wasps responded with a try in the corner by Hughes, converted by Carlisle, but again they fluffed the restart and Abendanon scored in the corner from a clever round-the-corner pass by Leroy Houston. Heathcote converted to make the score 25-13 at half-time.
For much of the second half Wasps threatened to run Bath off their feet, first creating a try in the corner for Helu, converted by Carlisle.
Bath were rocking, but suddenly they broke out of defence with chip over the top by Heathcote which was carried on by Peter Stringer and Devoto for Eastmond to finish off at the other end for a spectacular bonus-point try.
The fly-half's conversion gave Bath a little breathing space at 32-20 but back came Wasps with a Daly try to stay within a score.
Bath tried to regain control of the game but it was a nervy last few minutes for the capacity Recreation Ground crowd.