ARTICLE AD BOX
Alexandre Lacazette scored deep into injury time to rescue a point for Arsenal as club legend Patrick Vieira was denied a winning return with Crystal Palace.
The Eagles were set for three points until they failed to clear a corner and Lacazette pounced after Ben White's effort was saved.
The Gunners started brightly and led deservedly through Pierre-Emerick Aubameyang after Vicente Guaita's diving save to deny Nicolas Pepe.
But Palace improved - as the Gunners faded - and Christian Benteke continued his good record in games against the Gunners with the equaliser.
Thomas Partey was caught in possession by Jordan Ayew and Benteke drilled a shot into the bottom corner.
Palace again stole the ball off Arsenal to go ahead, as this time Conor Gallagher dispossessed Albert Sambi Lokonga in his own half, and the visitors broke quickly, with Odsonne Edouard hammering in a shot via the underside of the bar.
Kieran Tierney almost equalised for Arsenal late on but blasted against the bar with his shot.
And it looked as if they were going to fall short before substitute Lacazette steered home a loose ball from close range.
Arsenal were understandably aggrieved when James McArthur was only booked late in the first half for a wild kick at Bukayo Saka, who went off injured at half-time.
Arsenal move up to 12th with a sixth game unbeaten, while Palace remain 14th after a third draw in a row.
- Follow reaction to Arsenal v Crystal Palace
- Everything you need to know about the Gunners, all in one place
- Go to our Palace topic page
Vieira so close to famous return
Vieira, a three-time Premier League title winner with Arsenal - and part of the 'Invincibles' who went through the 2003-04 top-flight campaign unbeaten - returned to face his old team for the first time as a manager.
For long periods, home fans may have been wondering if they have the right former Gunners captain in charge in Mikel Arteta. They still might wonder.
Palace have only lost once in six games now and even though they lost two points late on, they did not miss Wilfried Zaha, who was out through illness.
Lacazette's late equaliser could be a huge boost for Arsenal's confidence, though, as it stretched their unbeaten run to six games in a match they started so well.
Aubameyang volleyed in a lovely opener from a tight angle but they were then architects of their own downfall.
Both Palace goals came from Arsenal midfielders losing the ball, first Partey and then Sambi Lokonga - the half-time replacement for the injured Saka.
But that is to take nothing away from Palace, who forced those errors and deserved their lead.
Vieira may rue his decision to replace goalscorer Edouard with defender James Tomkins eight minutes from time.
They were holding on at the end and the hosts showed good character to find a way through. They may have thought Tierney's shot off the bar was their last chance but they kept the pressure on and Lacazette broke Palace hearts.
He did so with his first league goal since 11 April.
How to play
Rate players out of 10 throughout or after the game. The rater will close 30 minutes after the final whistle.
Rating range key1 = Give it up10 = Pure perfection
Arsenal
Squad number32Player nameRamsdale
Squad number18Player nameTomiyasu
Squad number4Player nameWhite
Squad number6Player nameGabriel Magalhães
Squad number3Player nameTierney
Squad number5Player namePartey
Squad number8Player nameØdegaard
Squad number19Player namePépé
Squad number10Player nameSmith Rowe
Squad number7Player nameSaka
Squad number14Player nameAubameyang
Squad number9Player nameLacazette
Squad number23Player nameSambi Lokonga
Squad number35Player nameGabriel Martinelli
Crystal Palace
Squad number13Player nameGuaita
Squad number2Player nameWard
Squad number16Player nameAndersen
Squad number6Player nameGuéhi
Squad number3Player nameMitchell
Squad number4Player nameMilivojevic
Squad number18Player nameMcArthur
Squad number9Player nameJ Ayew
Squad number23Player nameGallagher
Squad number22Player nameÉdouard
Squad number20Player nameBenteke
Squad number5Player nameTomkins
Squad number7Player nameOlise
Squad number8Player nameKouyaté
Line-ups
Arsenal
Formation 4-2-3-1
- 32Ramsdale
- 18Tomiyasu
- 4White
- 6Gabriel
- 3Tierney
- 5ParteySubstituted forMartinelliat 81'minutes
- 8ØdegaardSubstituted forLacazetteat 67'minutes
- 19Pépé
- 10Smith Rowe
- 7SakaBooked at 42minsSubstituted forSambi Lokongaat 45'minutes
- 14Aubameyang
Substitutes
- 1Leno
- 9Lacazette
- 15Maitland-Niles
- 16Holding
- 17Cédric Soares
- 20Varela Tavares
- 23Sambi Lokonga
- 25Elneny
- 35Martinelli
Crystal Palace
Formation 4-2-3-1
- 13Guaita
- 2Ward
- 16Andersen
- 6Guéhi
- 3Mitchell
- 4MilivojevicSubstituted forKouyatéat 67'minutes
- 18McArthurBooked at 42mins
- 9J AyewSubstituted forOliseat 71'minutes
- 23Gallagher
- 22ÉdouardSubstituted forTomkinsat 82'minutes
- 20Benteke
Substitutes
- 1Butland
- 5Tomkins
- 7Olise
- 8Kouyaté
- 12Hughes
- 14Mateta
- 15Schlupp
- 17Clyne
- 34Kelly
Referee:Mike Dean
Attendance:59,475
Live Text
Match ends, Arsenal 2, Crystal Palace 2.
Second Half ends, Arsenal 2, Crystal Palace 2.
Goal! Arsenal 2, Crystal Palace 2. Alexandre Lacazette (Arsenal) right footed shot from the left side of the six yard box to the bottom left corner following a corner.
Attempt saved. Gabriel Martinelli (Arsenal) left footed shot from very close range is saved in the centre of the goal. Assisted by Benjamin White.
Attempt blocked. Benjamin White (Arsenal) left footed shot from the centre of the box is blocked.
Corner, Arsenal. Conceded by Cheikhou Kouyaté.
Attempt missed. Alexandre Lacazette (Arsenal) left footed shot from the right side of the box is high and wide to the left.
Kieran Tierney (Arsenal) hits the bar with a left footed shot from a difficult angle on the left. Assisted by Alexandre Lacazette with a headed pass.
Substitution, Crystal Palace. James Tomkins replaces Odsonne Édouard.
Substitution, Arsenal. Gabriel Martinelli replaces Thomas Partey.
Foul by Conor Gallagher (Crystal Palace).
Takehiro Tomiyasu (Arsenal) wins a free kick in the defensive half.
Attempt missed. Gabriel Magalhães (Arsenal) header from the centre of the box misses to the left. Assisted by Thomas Partey following a set piece situation.
Attempt blocked. Nicolas Pépé (Arsenal) left footed shot from outside the box is blocked.
Foul by Joachim Andersen (Crystal Palace).
Alexandre Lacazette (Arsenal) wins a free kick in the attacking half.
Goal! Arsenal 1, Crystal Palace 2. Odsonne Édouard (Crystal Palace) right footed shot from the centre of the box to the centre of the goal. Assisted by Michael Olise following a fast break.
Corner, Arsenal. Conceded by Vicente Guaita.
Attempt saved. Alexandre Lacazette (Arsenal) right footed shot from the left side of the box is saved in the bottom right corner. Assisted by Pierre-Emerick Aubameyang with a through ball.
Substitution, Crystal Palace. Michael Olise replaces Jordan Ayew.
- Our coverage of your Premier League club is bigger and better than ever before - follow your team and sign up for notifications in the BBC Sport app to make sure you never miss a moment