Antonio Valencia gave the Latics the lead with a spectacular 16th-minute strike from distance before Vincent Kompany’s close-range finish from an Elano free-kick pulled the visitors level five minutes later.
But Wigan’s winner in the 34th minute came after Javier Garrido was deemed by referee Steve Bennett to have fouled Wilson Palacios inside the penalty area.
The decision seemed debatable, with Garrido having made minimal contact with Palacios, but Amr Zaki sent goalkeeper Joe Hart the wrong way from the resulting spot-kick.
Hughes said: “We are disappointed because we feel the referee has played an outcome in the result of the game.
“There were a number of key decisions which we felt he got incorrectly and once Wigan got in front, they were difficult to break down.
“The two goals we conceded today were an outstanding strike from their player for the first one and a penalty which we felt was really harsh.
“Their player had looked to gain an advantage and dived theatrically. I thought initially maybe the referee had given it because he was in a poor position but he wasn’t so he feels he was right to give that decision.”
Hughes also felt City should have had a penalty of their own just before half-time. Richard Dunne fell under pressure from Emile Heskey from a City free-kick but Bennett waved away their appeals.
“Yes, I think it was (a penalty). We tried to get an opinion on that decision but we were told it was a coming together of bodies,” added Hughes. “When you see it on the videos, Richard Dunne was clearly impeded in the box.” Wigan manager Steve Bruce predictably disagreed with his former Manchester United team-mate on the Palacios incident.
“I’ve seen the incident on the television and for me it was a penalty,” Bruce explained.
“I know it was slightly exaggerated by Palacios but he has got the ball and then there has been contact from their player.”
REFEREE: Steve Bennett (Kent) 5: Annoyed Mark Hughes with his performance, and understandably so. Penalty decision was wrong.
MATCH RATING: *** Wigan battled hard and deserved their success, even if it was touch and go at times.
WIGAN (4-4-2): Kirkland 6, Melchiot 6, Bramble 6, Boyce 6, Figueroa 7, Valencia 7, Palacios 6, Cattermole 6 (Brown 53, 6), Kapo 7, Heskey 7, Zaki 8.
Subs Not Used: Pollitt, Scharner, Kilbane, De Ridder, Camara, Koumas.
MANCHESTER CITY (4-4-2): Hart 6, Zabaleta 5, Richards 6, Dunne 6, Garrido 6, Kompany 6 (Fernandes 90, 5), Elano 6 (Sturridge 84, 5), Wright-Phillips 5, Ireland 6, Robinho 6, Jo 4 (Evans 74, 5).
Subs Not Used: Schmeichel, Michael Ball, Ben-Haim, Hamann.