Yann Kermorgant scored twice after half-time as Charlton completed a strong end to their season with victory over already-relegated Bristol City.
The French striker hit the top corner from the edge of the box two minutes after the break and then headed in four minutes later.
City, who finish bottom of the Championship, replied via Bobby Reid.
But 11 minutes from time Kermorgant crossed for Jonathan Obika to head home before Johnnie Jackson tucked in.
Charlton's win extended their late run to eight games unbeaten and they finished the season three points off the play-off places in ninth.
Charlton manager Chris Powell:
"It was a terrific end for us and we did it the right way.
"Seasons have tended to tail off for us and I wasn't going to allow it this time, especially at home.
"We have shown we can play in this league and I am a better manager for it and the players are better for the experience."
Bristol City manager Sean O'Driscoll:
"You have to reflect on where you are as a football club and we are trying to address that, not just on the playing field but throughout the whole business.
"We have got to change the culture."
Sorry, we were unable to load match stats, please try again.
Live Text Commentary
Full Time The referee brings the game to a close.90:00 +1:33
Bradley Pritchard takes a shot. Blocked by Liam Fontaine. Outswinging corner taken right-footed by Mark Gower played to the near post, clearance made by Paul Anderson.90:00 +0:50
Yann Kermorgant produces a left-footed shot from the edge of the box and misses to the right of the goal.89:06
Mark Gower takes the outswinging corner, Scott Wagstaff takes a shot. Blocked by Toby Ajala. Johnnie Jackson produces a left-footed shot from the edge of the area and misses to the left of the target.87:58
Unfair challenge on Scott Wagstaff by Joe Bryan results in a free kick. Yann Kermorgant has a direct shot on goal from the free kick.85:35 Substitution
Substitution Toby Ajala joins the action as a substitute, replacing Neil Kilkenny.84:18
Assist by Bradley Pritchard.84:18 Goal scored
Goal! - Johnnie Jackson - Charlton 4 - 1 Bristol C Johnnie Jackson finds the back of the net with a goal from inside the six-yard box to the bottom left corner of the goal. Charlton 4-1 Bristol City.83:43
Jonathan Obika gives away a free kick for an unfair challenge on Liam Fontaine. Free kick taken by Tom Heaton.81:47 Substitution
Substitution Ryan Taylor goes off and Wes Burns comes on.81:47
Direct strike on goal from the free kick comes in from Albert Adomah.81:47 Booking
Booking The referee shows Lawrie Wilson a yellow card for unsporting behaviour.81:25
Joe Bryan fouled by Lawrie Wilson, the ref awards a free kick.80:45
Jonathan Obika takes a shot. Save made by Tom Heaton.80:22
Bradley Pritchard concedes a free kick for a foul on Greg Cunningham. Albert Adomah takes the direct free kick.79:00
Yann Kermorgant provided the assist for the goal.79:00 Goal scored
Goal! - Jonathan Obika - Charlton 3 - 1 Bristol C Jonathan Obika finds the back of the net with a headed goal from close in. Charlton 3-1 Bristol City.78:58
Yann Kermorgant takes a shot.78:02 Substitution
Substitution (Charlton) makes a substitution, with Scott Wagstaff coming on for Callum Harriott.78:02
Effort from outside the area by Yann Kermorgant goes wide right of the goal.
Albert Adomah fouled by Chris Solly, the ref awards a free kick. Neil Kilkenny sends in a cross, Shot from deep inside the area by Louis Carey clears the bar.72:43
Albert Adomah has an effort at goal from just inside the box that misses to the left of the target.69:52
Tom Heaton takes the free kick.69:52 Substitution
Substitution David Button leaves the field to be replaced by Nick Pope.69:52
Joe Bryan fouled by Bradley Pritchard, the ref awards a free kick.68:43
Corner taken by Johnnie Jackson, clearance made by Joe Bryan.68:09
Bobby Reid takes a shot. David Button makes a save.67:04
Corner from the right by-line taken by Johnnie Jackson, clearance by Joe Bryan.61:14
Shot from outside the box by Bobby Reid goes wide right of the target.58:56 Goal scored
Goal! - Bobby Reid - Charlton 2 - 1 Bristol C Bobby Reid gets on the score sheet with a goal from the edge of the area to the bottom right corner of the goal. Charlton 2-1 Bristol City.56:48
Johnnie Jackson takes a shot. Blocked by Louis Carey. Inswinging corner taken by Mark Gower from the left by-line, Lewin Nyatanga makes a clearance. Inswinging corner taken by Johnnie Jackson from the right by-line.54:48
Header from close range by Bobby Reid misses to the right of the target.53:08
The referee penalises Mark Gower for handball. Neil Kilkenny delivers the ball from the free kick right-footed from right channel.52:38
The offside flag is raised against Callum Harriott. Free kick taken by Tom Heaton.52:04 Substitution
Substitution Albert Adomah is brought on as a substitute for Sam Baldock.50:42
The assist for the goal came from Chris Solly.50:42 Goal scored
Goal! - Yann Kermorgant - Charlton 2 - 0 Bristol C Yann Kermorgant scores a headed goal from close in. Charlton 2-0 Bristol City.49:51
Jonathan Obika has an effort at goal from outside the box which goes wide left of the goal.48:31
Free kick awarded for a foul by Dorian Dervite on Ryan Taylor. Free kick taken by Bobby Reid.46:32
Mark Gower provided the assist for the goal.46:32 Goal scored
Goal! - Yann Kermorgant - Charlton 1 - 0 Bristol C Yann Kermorgant fires in a goal from inside the penalty box to the top right corner of the goal. Charlton 1-0 Bristol City.45:28
Johnnie Jackson challenges Bobby Reid unfairly and gives away a free kick. Tom Heaton takes the direct free kick.45:01
The second half begins.45:00 +2:09 Half time
Half Time The half-time whistle blows.45:00 +1:42
Paul Anderson takes a shot. Save by David Button.44:54
Johnnie Jackson produces a header from the edge of the box and misses to the right of the goal.43:52
Michael Morrison fouled by Sam Baldock, the ref awards a free kick. Direct free kick taken by David Button.40:13
Direct effort from the free kick comes in from Sam Baldock, Bradley Pritchard gets a block in.40:13 Booking
Booking Mark Gower booked.40:06
Free kick awarded for an unfair challenge on Greg Cunningham by Mark Gower.34:12
Callum Harriott has an effort at goal from just outside the box which goes wide of the left-hand upright.32:11
Bobby Reid takes a shot. Michael Morrison gets a block in.30:37
Outswinging corner taken by Neil Kilkenny, clearance by Jonathan Obika.28:06
Jonathan Obika is flagged offside by the assistant referee. Tom Heaton restarts play with the free kick.23:16
Free kick awarded for an unfair challenge on Greg Cunningham by Callum Harriott. Tom Heaton takes the direct free kick.21:07
Unfair challenge on Neil Kilkenny by Callum Harriott results in a free kick. Direct free kick taken by Tom Heaton.15:03
Corner taken by Neil Kilkenny, clearance made by Yann Kermorgant.12:23
Tom Heaton restarts play with the free kick.12:23 Substitution
Substitution Rhoys Wiggins goes off and Lawrie Wilson comes on.12:23
Free kick awarded for an unfair challenge on Louis Carey by Callum Harriott.8:34
Corner taken by Mark Gower from the left by-line, Yann Kermorgant has a headed effort at goal from close in which goes wide left of the goal.6:23
Jonathan Obika is flagged offside by the assistant referee. Indirect free kick taken by Tom Heaton.0:48
Close range header by Bradley Pritchard goes wide of the left-hand upright.0:00
The match has kicked off.
Live data and text provided by our data suppliers