Tomas Rosicky's first Premiership goal broke Wigan hearts as Arsenal fought back from a goal down in the last 10 minutes to move back into fourth spot.
Rosicky celebrates his winner as Arsenal complete a fine comeback
Wigan took the lead when Denny Landzaat crashed home a superb strike from 35 yards that gave Jens Lehmann no chance.
Emile Heskey hit a post and missed another good chance to extend the lead, while Thierry Henry was also wasteful.
But Fitz Hall put into his own net to concede the equaliser, before Rosicky headed in Julio Baptista's cross.
It was a sensational ending to a thrilling affair as Arsenal closed the gap on third-placed Liverpool in the race for Champions League places.
The pace of the match was of the highest order, with Wigan's ambition in evidence from the start in the face of some excellent Arsenal possession.
Arsenal controlled much of the opening half, with Baptista in particular revelling in his role just off Henry, and Rosicky twice going close.
But Wigan were also ambitious when they had the ball, and their confidence was clearly buoyed every time Arsenal's final ball or finish lacked quality.
Theo Walcott epitomised those flaws in a display that was frustrating and exciting in equal measure.
He did set Henry up for Arsenal's best chance of the first half, though, when he found the Frenchman on the back post, only for the striker to fire over from six yards.
Landzaat [left] and Baines celebrate Wigan's opener
And that miss was punished by Landzaat minutes later, the midfielder drilling a shot into the top corner after good work by Julius Aghahowa.
It was the 11th time this season that Arsenal had fallen behind in a game, and it could have been even worse had not Lehman pulled off a tremendous save from Heskey.
Early in the second half Heskey drilled over when a calm finish was needed, before the striker's appeals for a penalty were waved away when he went down under a Mathieu Flamini challenge.
Arsenal probed away and only some desperate defending ended fine dribbles by Clichy and then Henry.
With time ticking down, substitute Emmanuel Adebayor thought he had grabbed an equaliser when he slotted through Kirkland's legs, only to be denied by the official's flag.
But Arsenal felt the benefit of the official's decision 10 minutes from time, when Flamini was generously ruled onside and the Frenchman's cross was slid into his own net by Hall.
Wigan boss Paul Jewell was clearly furious, but his anger turned to despair moments later when a superb move involving Adebayor and Baptista was finished off by Rosicky's flying header.
There was no time for Wigan to respond and the defeat leaves them just five points off the bottom three.
Arsenal: Lehmann, Hoyte (Aliadiere 67), Toure, Djourou (Adebayor 51), Clichy, Walcott (Flamini 67), Fabregas, Silva, Rosicky, Julio Baptista, Henry.
Subs Not Used: Almunia, Denilson.
Booked: Toure, Henry, Lehmann, Rosicky, Clichy, Fabregas.
Goals: Hall 81 og, Rosicky 85.
Wigan: Kirkland, Hall (Haestad 90), Boyce, Jackson, Baines, Taylor (Valencia 87), Landzaat, Skoko, McCulloch, Heskey, Aghahowa (Kilbane 87).
Subs Not Used: Filan, Unsworth.
Booked: Baines, McCulloch, Hall.
Goals: Landzaat 35.
Ref: P Dowd (Staffordshire).