Two goals from Dwight Gayle turned the game on its head and saw the Eagles claim the points that mathematically secure their place in the Premier League after beating Stoke City.
Charlie Adam had given Stoke the lead at half-time but a minute after the restart Gayle notched his first after some fine play by Yannick Bolasie to create the chance, and then he put his side in front midway through the second 45 with a vicious free-kick to score his seventh of the campaign.
Palace started on the front foot and Yohan Cabaye saw a free-kick deflected just wide after four minutes with Jakob Haugaard caught flat-footed, but Marko Anautovic responded in turn for the Potters with a shot that flashed over the top of the Eagles’ crossbar and Peter Crouch used his height to head a corner goalwards but it was comfortable for Wayne Hennessey.
The Welshman was soon called into action again when he made a good save with his legs to deny Xherdan Shaqiri after Arnautovic had slipped him in, but on 26 minutes Mark Hughes’ men took the lead in simple fashion.
Giannelli Imbula brought the ball into the final third and found Arnautovic who acted as a pivot to control it and slip it behind the defensive line for the on-rushing Adam who tucked it past Hennessey into the far corner to score his first of the season.
That seemed to kill any momentum that Palace had been building but Pape Souare went close when he was picked out at the back post by his fellow full-back Joel Ward but blazed the ball high and wide as a tepid first 45 came to a close.
However things got off to the perfect start for the hosts as they equalised just over 60 seconds after play resumed, thanks to the dribbling ability of Bolasie. The winger drive forward and skipped past two Stoke defenders to get into the area, and after being bundled down by Geoff Cameron Gayle was on hand to tuck the ball past Haugaard and pull his side level.
After that high there was a low for Palace as half-time substitute Joe Ledley managed just 10 minutes before being withdrawn again after what looked to be a hip injury at just the wrong time for the Welshman with an FA Cup final and Euro 2016 on the horizon.
But Palace were much more in their stride now and were showing much more creativity than they’d mustered in the first half. On 58 minutes a cross field pass by Souare found Connor Wickham who played the ball into Scott Dann. The centre-back squared for Gayle who delicately nudged it into Puncheon’s path but the winger blazed over hat would have been a fine team goal.
A minute later Wickham saw a header clip the outside of the post after a great cross from Souare in a near carbon copy of the goal that won the FA Cup semi-final a fortnight earlier, but Stoke showed their threat once again as Ryan Shawcross headed a corner narrowly over under pressure from Dann.
But midway through the second half the Eagles managed to get ahead. After Gayle was hauled down 25 yards out from Shawcross the striker picked himself up to blast the ball around the wall and into the net to move onto seven for the season and into pole position as the Eagles’ top scorer this term.
However with four minutes remaining Stoke carved out a fantastic chance to draw level once again as Stephen Ireland’s curled pass fell perfectly into the path of Arnautovic who rounded Hennessey but instead of rolling the ball into the net he tried to lash it towards goal and saw it fly over the top as a golden chance went begging.
Knowing they needed one more goal to seal victory the Eagles pressed for a third and Jordon Mutch went close from distance, but the 2-1 lad was ultimately enough to claim the win and top-flight football next season for Palace.
Palace: Hennessey, Ward, Dann, Delaney, Souare, Bolasie, Cabaye (Ledley 45, Mutch 55)), McArthur, Gayle (Sako 90), Puncheon, Wickham. Subs not used: Speroni, Kelly, Sako, Campbell, Adebayor.
Stoke City: Haugaard, Bardsley, Shawcross, Cameron, Pieters, Whelan (Bojan 74), Adam (Ireland 65), Shaqiri (Walters 65), Imbula, Arnautovic, Crouch. Subs: Bachmann, Wollscheid, Diouf, Joselu.