Pierre-Emerick Aubameyang was at his best to deliver a 3-2 victory for Arsenal in a Premier League thriller against Everton.
The forward’s double followed a close-range volley from Eddie Nketiah as Arsenal fended off an Everton side who lost for just the second time in the league under Carlo Ancelotti.
Everton stunned Emirates Stadium with a first-minute opener from Dominic Calvert-Lewin and also scored through Richarlison in stoppage time at the end of the first half.
But they were rocked by Aubameyang putting Arsenal back in front just 24 seconds into the second half, and despite a heartening return to action for Andre Gomes, the Toffees finished without reward.
Aubameyang's heroics took his Premier League goals haul to 32 in 38 games played on Sundays (Monday AEST), compared to a more modest 17 in 36 matches on all other days.
Everton made a dream start thanks to Calvert-Lewin's overhead kick.
David Luiz flunked an attempted headed clearance from Gylfi Sigurdsson's free-kick as the ball reached the heart of the Arsenal penalty area, and it looped up perfectly for Everton's number nine.
Arsenal lost left-back Sead Kolasinac to an early arm injury but had buccaneering teenager Bukayo Saka as an ideal replacement.
The hosts perked up and it was Saka who provided the delicious left-wing cross that Nketiah volleyed in from close range for a 27th-minute leveller, his second Premier League goal.
Aubameyang then snuck behind the Everton defence to meet a fine throughball from David Luiz - the defender demonstrating one of his more reliable attributes - to nudge the Gunners in front six minutes later.
Everton made it 2-2 just before the break when Sigurdsson's mis-hit shot was headed on by Yerry Mina, and Richarlison, booked moments earlier after diving in late on Dani Ceballos, scrambled past goalkeeper Bernd Leno.
But Arsenal were back in front early in the second half when Aubameyang met Nicolas Pepe's cross from the right and thundered a downwards header past Jordan Pickford.
Just before the hour mark, Everton introduced Gomes off the bench in place of Morgan Schneiderlin, giving the former Barcelona midfielder his first outing since the shocking ankle dislocation he suffered against Tottenham in November.
Arsenal, coming off a long trip to Greece for Thursday's Europa League clash with Olympiacos, looked to be tiring. Calvert-Lewin should have put Everton level but Leno made a fine block to thwart the striker, and Mikel Arteta's side hung on for the points.
They almost had a fourth goal when Nketiah struck the bar after a Pickford error, though were relieved to see a late Calvert-Lewin header drift wide of the target.
What does it mean? Positive signs for both
Freddie Ljungberg and Duncan Ferguson were in caretaker charge of these teams when they met for a December 21 goalless draw at Goodison Park. Both clubs were on the point of a reboot under incoming bosses Arteta and Ancelotti, who watched on from the stands that day.
Coming into this game, Everton had taken 17 points from a possible 24 under Ancelotti, with Arteta's Arsenal taking 11 points from the same eight-game span. Plainly both sides are in better shape than in the final days of Marco Silva and Unai Emery's reigns. Although Arteta emerged the winner this time, there was little to cause Ancelotti excessive consternation.
Good to see Gomes back
It was 112 days since Gomes last appeared on Everton duty, after he was badly injured in a challenge with Son Heung-min. Given a half-hour run-out here, there was a glint in his eye as he committed a stoppage-time foul and was booked, right in the cut and thrust of the action. He enjoyed being back, despite the result.
Something missing in the middle
Everton's midfield gives cause for concern. Fabian Delph, Schneiderlin and Sigurdsson are far from convincing as a trio, and Alex Iwobi is in the midst of a career that will surely always blow hot and cold. This looks like the area Ancelotti may need to train his focus in the close season.
Arsenal welcome Olympiacos to Emirates Stadium on Thursday, looking to convert a 1-0 lead into an aggregate win, before tackling Portsmouth in the FA Cup on the following Monday. Everton will face Manchester United at Goodison Park next Sunday.