The Argentine bagged the winner after turning past two players on the edge of the box before crashing his shot into the roof of the net with seven minutes remaining.
Franco Di Santo and Arouna Kone missed good chances for the Latics who remain in the relegation zone and three points from safety.
The first half was rather low key as both sides returned to league action after their emotionally and physically-draining semi-final victories last weekend.
Wigan started confidently, stroking the ball around neatly but without great penetration. They won two corners inside the first four minutes, but failed to capitalise.
Aleksandar Kolarov flashed his free-kick wide before Sergio Aguero shot across goal and failed to win a free-kick outside the area, but other than that there was little activity of note in the opening 30 minutes.
There then followed a flurry of activity as Wigan produced a sparkling move with Kone bursting forward and Shaun Maloney backheeling into the path of Di Santo.
The Argentinian did brilliantly to jink round two defenders and open his body to shoot but Hart parried low to his left. City raced upfield in response but Aguero failed to get a touch on Tevez’s dangerous low cross.
City survived a couple of scares soon after the restart as first Maloney wrongfooted Micah Richards and beat Hart with a shot from a tight angle only for Joleon Lescott to clear off the line.
Wigan appeared to go close again when Paul Scharner headed against the bar from a free-kick but the flag had been raised for offside.
After that near miss, heartbreak followed for Wigan as Tevez struck a typically sublime winner. The Argentinian turned away from two defenders on the edge of the area and jinked past a third before curling a shot into the top corner.
It was his eighth goal in nine games and left Wigan in the bottom three as one of their valuable games in hand had slipped away.
City, meanwhile, cut Manchester United’s lead at the top to 13 points, and now the side’s must do it all again at Wembley next month.