This victory will have given Dai Young’s side plenty of confidence ahead of their United Rugby Championship opener against Connacht in two weeks’ time.
It may have been a pre-season friendly but it had the intensity of a full blooded Anglo-Welsh clash.
The hosts will have been pleased with their overall performance as they outmuscled a powerful Bath outfit.
Cardiff came out of the blocks firing with their forwards laying siege to the Bath try line.
After a couple of menacing driving line-outs and close carries, James Ratti powered his way over the line for the opening try with Rhys Priestland adding the extras from right in front of the posts.
But Bath hit back immediately with their try almost a carbon copy of Cardiff’s with Beno Obano showing his power to get over the line. Danny Cipriani converted. Cardiff played with plenty of intent but they were met by a ferocious Bath defence with their line speed forcing the hosts into making handling errors.
The hosts retook the lead with Priestland booting over a penalty from 50 metres out against his former side meaning Cardiff turned around 10-7 to the good.
But Bath began the second half strongly as they took a route-one approach over the line with a number of powerful carries from their pack.
Cardiff defended valiantly but they couldn’t prevent Bath trialist Richard de Carpentier from going over.
Orlando Bailey converted but Priestland got Cardiff straight back on the scoreboard with another penalty from 40 metres out.
Cardiff had the bit between their teeth with their backs beginning to trouble Bath’s defence due to Priestland putting more width on the ball.
The ball moved quickly through the hands with Hallam Amos skinning his opposite number before passing back inside for Lloyd Williams to score.
The home side were now full of confidence and extended their lead when Owen Lane went over at the far right-hand corner after some neat handling.
Bath fought hard to get back into the game, but Cardiff were able to successfully close out the game.