Christian Benteke's first goal in almost a year helped Crystal Palace sink Arsenal 3-2 and put a huge dent in the Gunners' Premier League top-four hopes.
Benteke fired his first goal in 20 games then laid on another for the tricky Wilfried Zaha as the Eagles stunned the Emirates Stadium to claim their eighth league win on the road this term.
James McArthur's header sealed a fine victory that ended Arsenal's 10-match winning league run at home - and threw a spanner in the works in the Gunners' bid for a top-four finish.
Mesut Ozil and Pierre-Emerick Aubameyang struck for Arsenal, but those goals seemed little other than afterthoughts for Unai Emery's rudderless hosts.
Arsenal remain fourth in the table but are only ahead of fifth-placed Chelsea on goal difference, with Manchester United two points behind in sixth.
Shokdran Mustafi endured a day to forget, the Germany defender producing a string of mistakes which ultimately help gift Palace their win.
Benteke's first goal since Palace's 5-0 win over Leicester on April 28, 2018 kick-started a fine Eagles performance, with Roy Hodgson's men holding out for a hugely-impressive win.
Palace now boast the league's sixth-best record on the road, Arsenal joining the likes of Manchester City and Wolves in finding no answers to the Eagles on the road.
Arsenal were booed off the field at half-time and rightly so.
The listless Gunners deserved to trail at the break, with Palace producing a measured away performance.
Mesut Ozil side-footed wide in an early opening but the Gunners conjured precious few genuine chances after that.
Martin Kelly flicked over when he should have opened the scoring after Scott Dann's header into the six-yard box.
Arsenal failed to heed that warning however, and paid the price when Mustafi let Benteke stroll into the box unmarked and head home.
The German defender wrongly thought Benteke offside, and rather than play to the whistle appealed in vain - while the Eagles' Belgian hitman coasted into position and then nodded home.
Benteke had a second effort chalked off for offside after Zaha's fine through-ball as Palace continued to press.
And the visitors probably should have doubled their lead before the break, with Cheikhou Kouyate forcing a double save from Bernd Leno, then Benteke blasting over from Zaha's fine tee-up.
Arsenal emerged transformed after the break, Ozil levelling almost immediately.
The Germany star ghosted onto Alexandre Lacazette's deft reverse ball and crashed in at the near post.
Palace rallied though, and Ainsley Maitland-Niles had to rescue Mustafi after the German's missed header had gifted Zaha a run on goal.
The hapless Mustafi's next mistake cost Arsenal dear however, as Zaha raced onto Benteke's flick and slotted home.
Mustafi could only watch on as Zaha wriggled round him to stroll through on goal, the Gunners man incorrectly expecting goalkeeper Leno to race out and mop up.
Palace refused to relent or wilt in the sunshine, and bolstered their lead when McArthur nodded home from a corner.
Aubameyang netted a neat second for Arsenal to tee up a tense finish, trading passes with Lacazette before prodding home. But there was to be no recovery, Hodgson's men deservedly holding out.