Stones netted either side of Ilkay Gundogan’s brilliant 20-yard effort, before Raheem Sterling’s free-kick completed the rout to extend our unbeaten run to 15 games and move us up to second in the table, two points behind leaders Manchester United.
City went ahead when Stones glanced Kevin De Bruyne’s superb cross past Vicente Guaita to score his first Premier League goal for the Club, as the Belgian provided his 100th assist since his arrival in Manchester.
Gundogan put Pep Guardiola's side in a commanding position approaching the hour mark, when he dispossessed Andros Townsend on the edge of the area and curled a sumptuous effort into the top corner.
Stones got his second and City’s third after Guaita could only parry Ruben Dias’ downward header from a corner and the Portugal international’s defensive partner reacted like a seasoned striker to lash the ball under the Palace goalkeeper from 10-yards.
Sterling wrapped up the points two minutes from time when he fired a free-kick into the top corner from 18-yards and the victory means City will go top of the league if we win our game in hand on leaders United.
De Bruyne’s special delivery
Prior to kick-off, Roy Hodgson had spoken about the need for his side to survive the City onslaught and, with 11 men often stationed in their own half, survival mode made the visitors stubborn opposition in the opening 45-minutes.
The home side dominated possession but failed to truly test Guaita until De Bruyne delivered with a moment of the highest quality to reach a century of assists in some style.
The close attentions of James McArthur and Tyrick Mitchell appeared to give the Belgian few options when he collected Fernandinho's cross field pass, but he had other ideas, delivering an in swinging ball with the outside of his right foot for Stones to nod home.
A sensational piece of skill from a sensational player.
73% of possession and 13 shots to two in City’s favour highlights the extent of our dominance.
It was our seventh clean sheet in our last nine games and for all our defensive steel has been central to our current run of fine form, it was the quality of our attackers which won us this game.
With De Bruyne’s cross for Stones having prised open the Eagles’ defence, City continued to excel in the final third.
Gundogan showcased tenacity and technique in equal measure to continue his goalscoring form, whilst Sterling reminded everyone of his own attacking prowess with his sweetly struck free-kick.
A cleaner connection from Gundogan's flick on might have seen Gabriel Jesus get in on the act with a diving header and Guaita was left breathing a sigh of relief immediately after City's second as he scrambled away a clearance after running into trouble when the Brazilian striker closed him down in the area.
De Bruyne also went close from distance, with a 20-yard effort that flashed just wide and attack proved to be the best form of defence for City, with Eberechi Eze’s speculative attempt to lob Ederson the closest the visitors came to a goal.
Pep GUardiola: players make it easy
"We didn't concede, we had to be patient and Palace defended really well. We were so stable, it is an important victory.
"When we handle top teams we are fortunate to have this quality. In the final third when Kevin de Bruyne makes the assist, Ilkay Gundogan and Raheem Sterling put it in the top corner, and John Stones was on fire in the box.
"It's easy for me when you have these players."
Man of the match - John Stones
Two goals and a clean sheet made it a great day at the office for the centre-back, who delivered another accomplished display.
Gundogan has scored four goals in his last six Premier League matches, as many as he'd scored in his previous 55 games in the competition. His six goals in all competitions this season are his joint-most for the Club in a single campaign.
What it means
Our fifth consecutive win in the Premier League sees us leapfrog Tottenham Hotspur, Liverpool and Leicester City into second place. Just four points separates the top five.
City face Aston Villa in the Premier League on Wednesday 20 January. Kick-off at the Etihad Stadium is at 18:00 (UK).
CITY: Ederson, Walker, Dias, Stones, Zinchenko, Fernandinho (C), Gundogan (Cancelo 71'), De Bruyne (Torres 71'), Bernardo (60'), Sterling, Jesus.
SUBS: Steffen, Rodrigo, Mendy, Mahrez, Delap, Doyle,
CRYSTAL PALACE: Guaita, Ward, Tomkins, Cahill, Mitchell, Townsend (Batshuayi 79'), Milivojevic (C) (Riedewald 69'), McArthur, Eze, Ayew.
SUBS: Butland, Clyne, Van Aanholt, Dann, Benteke.
News about Man City v C Palace
City 4-0 Palace: Match stats and reaction
City 4-0 Crystal Palace: Full-match replay
Enjoy the full 90 minutes of City's superb Premier League triumph over Crystal Palace on CITY+. Watch more
City 4-0 Crystal Palace: Extended highlights
Watch extended highlights of Manchester City's 4-0 win over Crystal Palace in the Premier League. Watch more
City 4-0 Crystal Palace: Brief highlights
Watch the very best of the action from Manchester City's 4-0 win over Crystal Palace in the Premier League. Watch more