Fourteen-man Blues hold on for win
Fourteen-man Blues hold on for winSHARE
Danny Wilson's side looked in total control after an hour thanks to tries from Aled Summerhill, Rey Lee-Lo and Tom James which put them 19 points up.
However, a pair of converted tries in quick succession from the Dragons, by Lloyd Fairbrother and then a penalty try, set up a grandstand finish.
The visitors held on, and move back up to fourth in Guinness PRO14 Conference A, but they were pushed all the way.
The Blues had an early chance to take the lead but Gareth Anscombe could not punish a home offside as he failed to split the uprights with his penalty attempt.
Despite the rainy conditions, both teams were playing with ambition, and on one promising attack Hallam Amos' grubber through almost put in Ashton Hewitt.
Summerhill got back just in time but from the resulting five-metre scrums, Brad Thyer was penalised and eventually sent to the sin-bin.
It seemed like the perfect opportunity to strike for the Dragons but a knock-on saw the chance go begging.
With the man advantage Dragons were able to control possession and territory, but the visiting defence held well to keep them out.
And once Thyer returned it was the Blues who opened the scoring, Cory Hill collecting a ball in an offside position and Anscombe slotting the resulting three-pointer.
The Blues built on that with a fine team try, involving both wingers. Taking advantage of quick ball, Anscombe put Lee-Lo into space, he then passed inside to Owen Lane, across from the opposite wing. While his offload didn't go to hand, Summerhill was able to nudge it on with his boot before dotting down, Anscombe's conversion was off-target.
The Dragons pulled three points back before half-time, from the boot of Henson, but it was the visitors who led 8-3 at the break.
Things got even better for the Blues early in the second half as they again made the most of quick ball to cross once more.
This time it was Henson who raced up looking to cut off a Blues overlap, but he was caught out of position giving Lee-Lo a simple run-in. Anscombe's conversion made it 15-3.
Henson could have cut the deficit but was off-target with a penalty attempt as the Dragons chased the game.
Instead it was the Blues who added a third try on the hour to effectively wrap up the win, Matthew Morgan getting outside Hewitt before finding James for the simple finish. Anscombe's touchline conversion made it 22-3.
It was proving a tough afternoon for the Dragons but they hit back with a try from Fairbrother, set up by a lovely pop pass from Hill in the build-up.
And the comeback was well and truly on with seven minutes remaining when the Dragons turned to their driving maul, pushed the visitors back and earned a penalty try as it was pulled down.
Kirby Myhill was sin-binned for his troubles, and the deficit was back to 22-17.
That left the Dragons with a chance to earn an unlikely win, but in the difficult conditions, Cardiff were able to see out the remaining few minutes and take the derby success.
For Newport Gwent Dragons:
Tries:Fairbrother, penalty try
Cons: Henson, penalty try does not require a conversion
For Cardiff Blues:
Tries:Summerhill, Rey Lee-Lo, James
Cons: Anscombe 2
Yellow cards: Bradley Thyer (Cardiff Blues, 14), Kirby Myhill (Cardiff Blues, 73)
Newport Gwent Dragons: 15 Hallam Amos, 14 Ashton Hewitt, 13 Adam Warren, 12 Jack Dixon, 11 Pat Howard, 10 Gavin Henson, 9 Dan Babos, 8 James Sheekey, 7 James Benjamin, 6 Aaron Wainwright, 5 Cory Hill (captain), 4 Joe Davies, 3 Lloyd Fairbrother, 2 Elliot Dee, 1 Sam Hobbs.
Replacements: 16 Liam Belcher, 17 Thomas Davies, 18 Nicky Thomas, 19 Rynard Landman, 20 Ben Roach, 21 Sarel Pretorius, 22 Angus O'Brien, 23 Jared Rosser.
Cardiff Blues: 15 Matthew Morgan, 14 Owen Lane, 13 Garyn Smith, 12 Rey Lee-Lo, 11 Aled Summerhill, 10 Gareth Anscombe, 9 Tomos Williams, 8 Nick Williams, 7 Olly Robinson, 6 Josh Navidi, 5 Macauley Cook, 4 Seb Davies, 3 Anton Peikrishvili, 2 Matthew Rees (captain), 1 Brad Thyer.
Replacements: 16 Kirby Myhill, 17 Gethin Jenkins, 18 Keiron Assiratti, 19 Damian Welch, 20 Josh Turnbull, 21 Lloyd Williams, 22 Jarrod Evans, 23 Tom James.
Referee: Andrew Brace (Ireland)
Assistant referees: Dan Jones, Adam Jones (Wales)
TMO: Jon Mason (Wales)