Goals in either half from Wilfried Zaha and Conor Gallagher earned Crystal Palace an impressive 2-0 win over 10-man Manchester City.
Zaha put Palace ahead with his 50th Premier League goal in the sixth minute, when he converted a Gallagher pass at the end of a swift counter-attack.
Things got worse for Man City in first-half stoppage time when Aymeric Laporte was sent off for bringing down Zaha.
Gabriel Jesus thought he had equalised for the hosts on the hour but his effort was overturned by the Video Assistant Referee for offside.
Gallagher sealed the victory with two minutes to go as he fired a powerful effort beyond Ederson to move Palace up to 13th on 12 points.
Man City are third on 20 points, five behind leaders Chelsea.
See: Man City report | Crystal Palace report
Next fixtures
Man City: 6 Nov v Man Utd (A)
Crystal Palace: 6 Nov v Wolves (H)
Match officials
Referee: Andre Marriner. Assistants: Adrian Holmes, Scott Ledger. Fourth official: Anthony Taylor. VAR: Lee Mason. Assistant VAR: Ian Hussin.
WHO'S GOING TO BE YOUR
MAN OF THE MATCH?
Vote at Full-time