Championship: Bristol City 0 Charlton Athletic 2
Chris Powell's team left Ashton Gate Stadium with maximum points thanks to goals from Danny Haynes and Michael Morrison as Bristol equalled their club record of seven consecutive defeats.
However, it was the hosts who settled quickest and they came close to breaking the deadlock on 10 minutes.
Martyn Woolford pounced on an Albert Adomah cross but he was unable to find a way past Guyana defender Leon Cort.
Charlton missed an opportunity themselves at the other end but it did not matter as Haynes netted the opening goal after 20 minutes.
Dale Stephens unleashed a powerful shot from distance that hit both posts but the former Barnsley man was on hand to tuck away the rebound, his second goal in as many games.
An unmarked Sam Baldock wasted a chance to bring Bristol level seven minutes later after directing his shot at goalkeeper Ben Hammer.
Charlton continued to dominate proceedings in the second half and they were soon rewarded with a second goal just before the hour-mark.
English defender Morrison made no mistake inside the penalty area, hitting the back of the net from eight yards as Charlton moved up to 16th on the Championship table.
Bristol, meanwhile, are four points adrift of Barnsley and safety after 16 games.