Mikel Arteta’s men fought back from an early Youri Tielemans goal to score through David Luiz, Alexandre Lacazette and Nicolas Pepe.
This helped them to end a three-game losing streak at the King Power Stadium in the top-flight.
The result means Arsenal closed to within three points of sixth-place Liverpool, having played a game more, while Leicester City stay third and 13 points behind leaders Manchester City.
Tielemans gave Leicester City the lead with a precise finish after being allowed to run unchecked into the Arsenal penalty box.
Kieran Tierney was already out of position and Pablo Mari was distracted by Jamie Vardy.
It was the fourth time the Gunners had conceded in the opening six minutes of a league game in 2021.
But it seemed to spark them into life, with Pepe winning a penalty kick only for VAR to determine he was fouled outside the box.
David Luiz deservedly equalised six minutes before the break, steering a fine header past Kasper Schmeichel from William’s free-kick, and the visitors were ahead in injury time.
Pepe’s shot was blocked by the raised arm of Wilfred Ndidi and this time VAR ruled in favour of a penalty kick, allowing Lacazette to smash home from the penalty kick spot.
Injury problems struck each team either side of the break.
Emile Smith-Rowe limped off for the Gunners before Leicester’s Harvey Barnes was taken off on a stretcher, his left leg in a brace.
Arsenal scored their third soon afterwards, Pepe leading a counter-attack and then tapping a loose ball into the net after good work from Martin Odegaard and Willian.
Pierre-Emerick Aubameyang came off the bench and almost made it 4-1, skipping into space and firing just wide of the right-hand post.(dpa/NAN)