Johnnie Jackson grabbed a late winner as Charlton twice came from behind to beat in-form Watford 4-3.
The Addicks skipper struck with a header at the end of a breathless encounter at Vicarage Road to secure a first win in seven for Chris Powell's side.
Daniel Pudil's early strike put Watford ahead but Charlton hit back through Tommie Hoban's own goal and Yann Kermorgant's header. And after Almen Abdi's penalty and Alexandre Geijo's goal put Watford back in front, Kermorgant tucked in another equaliser before Jackson had the final say.
The home side struck first after 11 minutes when Geijo's low shot was saved by Ben Hamer and Pudil was on hand to steer in the rebound for his first goal for the club.
Jackson had the ball in the net soon after but all the midfielder had to show for it was a booking for handball. However, the visitors did draw level in the 33rd minute when Jackson swung in a corner, Watford failed to clear and the ball eventually went in off Hornets defender Hoban.
And three minutes later Charlton were ahead when Kermorgant powered a far-post header past Manuel Almunia from Bradley Pritchard's cross.
Watford started the second half strongly and Geijo teed up Fernando Forestieri, who was denied by the feet of Hamer. But the Addicks goalkeeper could do nothing to prevent Watford equalising in the 52nd minute after Dorian Dervite tripped Forestieri in the area and Abdi tucked away the penalty.
Hamer then tipped Geijo's shot over and Forestieri fired wide when he should have scored before Watford got their noses back in front in the 68th minute.
Geijo ran on to a clever chip from Forestieri and clipped the ball past Hamer. But the lead lasted less than two minutes as Ricardo Fuller jinked his way down the right and crossed for Kermorgant to tuck away his second of the game.
And former Watford loanee Jackson completed the turnaround when he headed in Dale Stephens' corner.