Wigan claimed their second successive Sky Bet Championship victory under new manager Uwe Rosler but had to withstand a fierce late onslaught as Reading battled back from 2-0 down.
Early goals from McCann and Powell had put Wigan firmly in charge. Reading squandered the chance to reduce the gap, when Billy Sharp blazed over a second-half penalty, but Pavel Pogrebnyak nodded home to give them hope.
Despite a flurry at the end, Reading slipped to their second home defeat in a row.
Rosler was taking charge of his third match since replacing Owen Coyle at the helm, although technically it was his fourth game as Wigan were leading 1-0 against Sheffield Wednesday at Hillsborough in midweek when the game was called off after 59 minutes due to a waterlogged pitch.
Rain lashed down in the early stages at the Madejski Stadium but Rosler would have liked what he saw as Wigan dominated, going forward with pace and power, and had forged 2-0 ahead by the 12th minute.
Reading, whose unbeaten nine-match home record had ended with a 2-1 defeat against Bournemouth a fortnight earlier, barely knew what had hit them.
Wigan went in front in the 10th minute, when James McArthur released James McClean on the left. McClean's attempted cross was blocked but McCann kept his head and, after gathering the loose ball, guided home a well-directed shot past stranded Reading keeper Alex McCarthy.
It got worse two minutes later, when Reading central defender Alex Pearce inexplicably allowed a hopeful punt forward to evade him. Powell scampered on to it and beat McCarthy with a low shot. The keeper did get a hand to it but could not stop the ball rolling into the net.
After 20 minutes, and with Reading having made little headway, the home fans started jeering. It seemed to rouse the players from their lethargy, with Pogrebnyak forcing Wigan keeper Ali Al Habsi into a fine save at his near post.
Kaspars Gorkss headed over from a Danny Guthrie corner and Jean Beausejour did well to block an effort from Sharp.
Wigan held firm but were sliced apart in the eighth minute of the second half when a slick Reading move allowed right back Chris Gunter to surge into the Wigan area.
McCann pulled him back, with the award of a penalty obvious, but Sharp blasted his spot kick high over the cross, with Al Habsi not having to move.
Sharp could have atoned for his error soon after, only to fire weakly at Al Habsi when clean through, but Reading grabbed a lifeline when they pulled a goal back in the 68th minute.
Guthrie crossed from the right and Pogrebnyak connected with a looping header that arced in over Al Habsi.
Wigan were rattled as Reading poured forward for the equaliser. Guthrie went close from a free-kick, Pogrebnyak narrowly failed to reach an Adam Le Fondre cross-shot and Pogrebnyak was denied by a post, but Wigan held on.