Dennis Rommedahl grabbed an injury-time winner for Charlton in the south-London derby against a Crystal Palace side who were left to rue a missed penalty.
Rommedahl has endured a frustrating start to his Charlton career but emerged as their hero when he powered in a 20-yard shot.
Palace striker Andy Johnson had earlier missed a penalty, which keeper Dean Kiely had saved low to his left.
Aki Riihilati had also hit the crossbar with a header for Palace.
Palace had seen the four teams below them in the Premiership all lose on Saturday and were hoping to start building a gap on their relegation rivals with a win against Charlton.
But the visitors had the better of the early chances with the first coming when a well-struck Radostin Kishishev shot went wide.
Charlton skipper Matt Holland tried to set the tone for the Addicks when he launched himself at a Jerome Thomas cross - only for his flying header to go agonisingly the wrong side of the post.
Charlton were also left feeling aggrieved that the referee waved away their appeals when Palace's Tony Popovic appeared to have brought down Shaun Bartlett as he tried to race on to a through ball.
Charlton keeper Kiely is beaten but saved by his crossbar
Palace had little to show for their efforts until late in the first half when Riihilahti's downward header bounced on to the crossbar and away to safety.
Charlton responded when Thomas used his pace to engineer an opening, only for Gabor Kiraly to save his angled shot.
Palace striker Johnson had enjoyed little change out of the Addicks defence at Selhurst Park but was gifted a chance when he won a penalty, courtesy of Talal El Karkouri's rash challenge.
Johnson stepped up to take the spot-kick only to see keeper Kiely dive low to his left and turn the ball around the post.
Johnson latched on to another through ball soon after and this time El Karkouri cut a more composed figure in dispossessing the striker.
And Johnson's penalty miss then came back to haunt him as Rommedahl, who joined in the summer from PSV Eindhoven, scored in the 93rd minute on the stroke of the final whistle.
The Danish winger cut inside from the right flank before sending a shot low into the right corner.
Crystal Palace: Kiraly, Boyce, Hall, Popovic, Granville, Routledge, Riihilahti (Freedman 86), Watson, Kolkka (Lakis 76), Hughes, Johnson. Subs Not Used: Speroni, Leigertwood, Andrews.
Booked: Watson, Riihilahti.
Charlton: Kiely, Young, El Karkouri, Fortune, Hreidarsson, Kishishev, Holland, Murphy, Thomas, Bartlett (Jeffers 76), Johansson (Rommedahl 19).
Subs Not Used: Euell, Andersen, Konchesky.
Booked: Murphy, Kishishev, El Karkouri.
Goals: Rommedahl 90.
Ref: M Messias (S Yorkshire).