Wasps moved back into the Gallagher Premiership play-off positions after edging out Bristol 29-22 in an Ashton Gate thriller.
Wales flanker Thomas Young, hooker Tom Cruse and number eight Nizaam Carr scored first-half tries to put the visitors in control.
And when a bonus point score arrived just 12 minutes into the second half, following Will Rowlands capitalising on a Bristol handling blunder to cross unopposed, it looked done and dusted for Wasps.
But Bristol, 16 points adrift at half-time, had other ideas as tries from scrum-half Harry Randall, centre Piers O'Conor and substitute Charles Piutau threatened a spectacular fightback.
Wasps' former Bristol fly-half Billy Searle kicked two conversions, but he was then carried off on his Ashton Gate return after suffering what appeared to be a serious ankle injury.
Searle's replacement Lima Sopoaga also added a conversion and kicked a penalty, while Bristol's Ian Madigan and Callum Sheedy each landed a conversion and Madigan also booted a penalty.
Centre Siale Piutau and wing Alapati Leiua returned after injury for Bristol, and lock John Hawkins made a Premiership debut, with Wasps boosted by England scrum-half Dan Robson, Young and Italy back Michele Campagnaro all featuring following Six Nations commitments.
Hawkins was forced off injured after just seven minutes, though, to be replaced by Nick Haining, and Robson also required early treatment before continuing as Madigan kicked a penalty after Wasps drifted offside.
But the lead lasted just two minutes, with Wasps driving a lineout close to Bristol's line and Young diving over from close range for a try that Searle converted.
Bristol were their own worst enemies at times, making kicking and handling errors, and Wasps continued to enjoy territorial dominance as the home side lost another lock when Haining departed for a head injury assessment.
It was a patchy display by Bristol, and Wasps surged clear by scoring two tries in five minutes just before half-time.
Cruse pounced for the first, touching down wide out following a sustained spell of pressure, then Bristol were punished for sloppy work just outside Wasps' 22.
It appeared to be a promising attacking position for the home side, but prop Yann Thomas' pass was intercepted by Searle, who sprinted 60 metres and then delivered a floated pass to Carr, who finished off in style.
It was a major blow for Bristol and Searle's successful touchline conversion gave Wasps a considerable advantage and left Bristol with a mountain to climb.
The second period had hardly started before Wasps lost Searle, with the game stopped for almost eight minutes while he received treatment before being taken from the pitch.
It was an unsettling sight for Wasps and Bristol scored almost on the resumption when half-time substitute Piutau sparked a flowing move that ended with Randall claiming a fine try that Madigan converted.
Although Rowlands' try briefly resumed normal service, Bristol kept fighting, as quickfire scores from O'Conor and Charles Piutau, plus a Sheedy conversion, brought them back to four points adrift with 20 minutes left.
It set up an exciting finale as Bristol pressed after Sopoaga kicked a penalty, but Wasps regrouped, reorganised themselves defensively and kept their opponents at bay to register an important win on the road.