Roberto Martinez's side scored twice in the first eight minutes and although Arsenal struck back quickly at the Emirates Stadium, Wigan hung on to claim a victory that moved them five points clear of relegation with four matches of the season left.
Arsenal stayed third, five points ahead of their north London neighbours Tottenham Hotspur and fifth-placed Newcastle United.
Wigan, who beat league leaders Manchester United 1-0 last week, took the lead when striker Franco di Santo scored a classic counter-attacking goal after seven minutes and they immediately doubled the advantage through Jordi Gomez.
Arsenal, who had won nine of their last 10 league matches, were shell-shocked but they regrouped quickly and defender Thomas Vermaelen powered home a header after 21 minutes from Tomas Rosicky's whipped cross.
The hosts continued to dominate possession and Wigan goalkeeper Ali Al Habsi made several fine saves to keep his team in front at halftime.
Wigan defended bravely in the second half as Arsenal's frustration mounted and their striker Victor Moses wasted a good chance to add a third goal after breaking clear of the defence.