Champions Charlton defeated Hartlepool to end the season on 101 points.
The visitors went ahead when Peter Hartley tapped past Ben Hamer from Neil Austin's corner, but a spectacular volley from Danny Hollands made it 1-1.
Danny Haynes scored a close-range header to put the Addicks ahead before Yann Kermorgant extended their lead by shooting home from a narrow angle.
Gary Liddle's deflected effort late on gave Hartlepool hope but Charlton held on for their 30th win of the season.
After the game, Charlton were presented with the League One trophy as they finished eight points clear of runners-up Sheffield Wednesday and 11 points ahead of third-placed Sheffield United.
VIEWS FROM THE DRESSING ROOM
Charlton manager Chris Powell told BBC London 94.9:
"Well it's something that doesn't happen too often at football clubs and we've been in the doldrums for a long time.
"I just want everyone to enjoy the day, it was brilliant, a great day.
"We went behind, we had character, great determination, great goals. It was a fantastic day for everyone.
"It wasn't a Charlton I knew as a player when I came back here in 2011 and it was tough to take but we made changes and it's paid off."
Charlton Athletic 01 Hamer 05 Morrison 06 Taylor 16 Wiggins 20 Solly 04 Jackson (Haynes - 30' ) 08 Stephens 11 Wagstaff (Pritchard - 65' ) 22 Hollands 10 Wright-Phillips (Euell - 83' ) 36 Kermorgant Substitutes 13 Sullivan 28 Cort 18 Pritchard 14 Haynes 17 Euell Hartlepool United 01 Flinders 02 Austin 18 Baldwin 29 Hartley 30 Holden 03 Humphreys (James - 73' ) 04 Liddle 11 Monkhouse 15 Sweeney 20 Murray (Poole - 82' ) 35 Noble Substitutes 21 Rafferty 05 Collins 08 Poole 10 Boyd 33 James