Alexandre Lacazette grabbed a late, late equaliser to salvage a point against Palace.
In a topsy-turvy game, we had looked to be in control after taking an early lead through Pierre-Emerick Aubameyang. But two mistakes in the midfield after the break were ruthlessly punished by Palace, leaving us staring at the prospect of a fourth league defeat of the season.
But with virtually the very last kick of the game, substitute Lacazette was in the right place to tuck home the loose ball from close range when Ben White's shot was parried.
In the end we had to settle for a point, but it looked like being so much more than that after a promising start. Having waited an extra couple of days to return to action after the latest international break, we were raring to go early on, taking the game to our visitors from the off.
The early pressure soon paid off, and it was the skipper who got the opener.
Takehiro Tomiyasu and Nicolas Pepe exchanged passes on the edge of the area before the latter forced a diving save from Vicente Guaita. Aubameyang was in the right place to volley home left footed at the far post.
It was no more than we deserved from a lively start.
We kept the intensity up, but Emile Smith Rowe's low shot aside, couldn't extend our advantage, failing to build on the early lead.
In fact it was Palace who slowly grew into the game, and the forward trio of Christian Benteke, Jordan Ayew and Odsonne Edouard were beginning to unsettle our defence.
And just on the stroke of half-time Aaron Ramsdale had to be alert to tip Conor Gallagher's long-range effort just wide.
Bukayo Saka - on the end of a nasty looking kick from James McArthur earlier in the first half - could not return after the interval and was replaced by Sambi Lokonga.
Within five minutes of the restart Palace were level. Thomas Partey was caught in possession outside the box, Benteke took the ball on and finished smartly low to Ramsdale's left.
Palace were on top now, and Ayew stung Ramsdale's gloves from 20 yards.
Mikel Arteta sent on Alexandre Lacazette for the last 20 minutes or so and the Frenchman immediately set up a chance for Smith Rowe, but he fluffed his shot.
Lacazette was then set up wonderfully by Aubameyang – Laca's shot was kept out by a full-stretch Guaita save.
But it was Palace who struck next, again making the most of sloppy play from Arsenal. This time Lokonga was dispossessed, Palace broke and Edouard lashed in off the underside of the bar.
Kieran Tierney rattled the crossbar from close range late on, and it looked as though it would be former Gunner Patrick Vieira and his side who would take the spoils.
But then Lacazette made his late, late intervention. Deep into the last minute of injury time we won a corner. The ball fell to White inside the box, his shot was saved by Guaita, but Laca - lively throughout his cameo - made no mistake with the rebound.
There was just change to the side that drew 0-0 with Brighton before the international break. Nicolas Pepe came in for Sambi Lokonga, meaning Martin Odegaard reverted to a deeper central midfield position. The settled back four of Takehiro Tomiyasu, Ben White, Gabriel and Kieran Tierney - in front of Aaron Ramsdale - started the fifth league game in a row.
WHAT IT MEANS
We are back in Premier League action at the end of the week, hosting Aston Villa on Friday night. Our third home successive home game will follow next Tuesday, when we take on Leeds United in the Carabao Cup fourth round.
Copyright 2023 The Arsenal Football Club Limited. Permission to use quotations from this article is granted subject to appropriate credit being given to www.arsenal.com as the source.