Reading clinched the Championship title following second-placed Southampton's 2-1 defeat at Middlesbrough, while Bristol City's 2-0 triumph over Barnsley secured them a sixth successive season of Championship football and saw Portsmouth and Coventry relegated to League One.
Reading, celebrating a return to the Premier League for the first time since 2008 after their win over Nottingham Forest on Tuesday, fell behind in the 14th minute when Wilfried Zaha put Crystal Palace ahead. Kaspars Gorkss' header drew Reading level five minutes later, and Adam Le Fondre nodded home after the break to spark delirium inside the Madejski Stadium.
Palace were not done and Glenn Murray grabbed the equaliser 15 minutes from time for 2-2, but it ultimately did not stop Reading winning the title thanks to Southampton's evening defeat.
Southampton's wait for automatic promotion continues after they came up short at Middlesbrough, 2-1. It was looking good for the Saints, who knew three points would send them up, after Billy Sharp scored after just 47 seconds.
However, Boro - themselves chasing a play-off berth - refused to lie down and were back on level terms through Nicky Bailey's deflected shot. Boro's comeback was complete 13 minutes from time - Merouane Zemmama rifling in a terrific free-kick to leave the race for the second automatic promotion spot going to the final day of the season (should West Ham beat Leicester on Monday).
Bristol City are assured of their second tier status after battling past Barnsley at Ashton Gate. Cole Skuse found the bottom left corner to give City the lead after ten minutes, before Jon Stead's second-half penalty sealed their survival. Jimmy McNulty fouled Ryan McGivern and Stead dispatched his spot-kick to extend City's unbeaten run to seven games - their longest sequence without losing all season.
City's success meant Portsmouth would be relegated, irrespective of their result against Derby at Fratton Park. City's victory proved to be irrelevant, however, as Pompey fell to a 2-1 defeat at home to Derby. Jake Buxton grabbed the opener and, despite Luke Varney pulling the hosts level, Steve Davies' late penalty - after Jason Pearce's foul on Jamie Ward - completed a sorry day for Portsmouth.
Coventry will play League One football next season after a 2-0 defeat to Doncaster confirmed their relegation. Andy Thorn's side's chances of taking their relegation battle into the final week of the season were reliant on a victory over Rovers and fourth-bottom Bristol City losing at home to struggling Barnsley. But the Sky Blues' fate was sealed as the Robins secured their Championship status with a 2-0 win of their own. Doncaster hammered the final nail into their coffin as James Hayter scored a penalty after Richard Keogh was sent off for hauling down the striker in the penalty area and Simon Gillett added a second.
Chris Gunter's own goal and Matty Fryatt's late penalty secured Hull back-to-back wins with a 2-1 success over Nottingham Forest, but it was not enough to keep their outside play-off hopes alive. Hull, whose top-six ambitions were all but dashed by a miserable sequence of five successive defeats last month, are unable to catch sixth-placed Cardiff, who gained a point from a 1-1 home draw with Leeds earlier in the day. Nick Barmby's Tigers have won three and drawn one of their last four matches, but a second straight win at the KC Stadium in their final home game of the season was too little too late. Forest, whose safety was assured last week, went behind against the run of play when Hull defender Liam Rosenior's shot came back off the post and rebounded into the net off Gunter in the 58th minute. Tigers striker Fryatt drove home an 81st-minute penalty after he had been fouled by Gunter, while Radoslaw Majewski fired a consolation for Forest in stoppage time.
Luciano Becchio's second-half equaliser secured a 1-1 draw for Leeds and ensured Cardiff's hopes of making the play-offs for a third successive season will go down to the wire. Leeds striker Becchio headed home his 11th goal of the season in the 73rd minute to cancel out Joe Mason's opener for Cardiff just before half-time and leave the Welsh side with a solitary point from their final home game of the season. It was no less than Leeds deserved for a spirited second-half display and Cardiff, unbeaten now in their last nine matches - albeit with six draws - face a nerve-jangling last-day finale at Crystal Palace in their bid to make it a hat-trick of top-six finishes.
Blackpool produced a clinical display to secure their place in the play-offs with a sparkling 4-0 derby victory over Burnley. Ian Holloway's side made it six games without defeat and they will now dream of a second Wembley triumph in three seasons and an instant return to the Premier League. Stephen Dobbie scored his fifth goal in as many starts since rejoining the Seasiders on loan from Swansea, clattering home from distance to make it 1-0 at the break. Gary Taylor-Fletcher, Stephen Crainey and substitute Nouha Dicko all got in on the act after the interval to avenge a 3-1 loss to their Lancashire rivals earlier in the season.