Crystal Palace survived a second-half bombardment to move into the play-off places and prevent Stoke City from regaining top spot in the Championship.
A cagey opening spell was soon forgotten when Stoke's Mamady Sidibe struck the woodwork in the ninth minute.
The danger came from a trademark long throw by Rory Delap and Sidibe's flicked header struck the inside of the far post, before the ball rolled along the line and out to safety.
But Palace were at least holding their own and stunned the home fans when they opened the scoring in the 22nd minute.
Scott Sinclair left Danny Pugh trailing to hang up a cross from the right byline and Tom Soares stole in unmarked at the far post to head home from six yards.
Stoke were nervous and stuttering, with newcomers Shola Ameobi and Stephen Pearson working hard but struggling to make an impression on their home debuts.
Palace took a firm grip in first-half stoppage time, when a half cleared free-kick was pumped back into the danger zone for Jose Fonte to unleash an 18-yard shot which tore into the net.
Stoke had a real go at the start of the second half as Leon Cort headed narrowly wide from Pugh's cross, then Ameobi did likewise from Pearson's delivery.
Tony Pulis also answered the fans' call for substitute Ricardo Fuller, returning from a two-match ban, as he replaced Sidibe, just 11 minutes into the second period.
And Fuller almost gave Stoke a 70th minute lifeline when he left two defenders for dead before his shot was brilliantly saved by Julian Speroni.
It was one-way traffic now, but Palace were defending solidly against a barrage of corners and crosses into the danger area.
Stoke, to their credit, continued to bomb on and only Ameobi will know how he failed to beat Speroni from four yards 12 minutes from time.
They finally bagged a deserved consolation five minutes from time when Glenn Whelan netted a scorching 25-yard volley, after a clearance from Jay Bothroyd's corner dropped into his path.