The Baggies led 1-0 through Shane Long before half-time and 2-1 through Gareth McAuley in the second half.
But the Latics levelled through Arouna Kone and substitute James McArthur before McManaman popped up with the dramatic winner.
And the Odemwingie affair took a fresh twist when the unused substitite was involved in an angry exchange with Baggies fans while warming up in the second half.
After a low-key start, Steve Clarke's men had an opening of sorts on eight minutes.
A flick by Romelu Lukaku and a cross by Liam Ridgewell combined to put Shane Long in possession on the right but his pull-back was held low down by keeper Joel Robles ahead of Markus Rosenberg.
Markus Rosenberg, making a surprise third Premier League start, was twice denied by blocks from former Baggies loanee Ben Watson.
Wigan went close when a long-range Kone shot took a nasty bounce and forced Ben Foster into an awkward save.
But the hosts were ahead on 29 minutes with a goal of real quality.
Claudio Yacob robbed former Albion man Paul Scharner with a fine tackle and the ball broke for Lukaku, who lofted a pass out to the right.
Markus Rosenberg showed good pace to chase it down and produced a fine cross for Long to tap home.
It could have been 2-0 when Rosenberg seized on a dreadful pass by James McCarthy and fed Lukaku, who was denied low down by keeper Joel Robles.
And the Latics broke away immediately to draw level as Jean Beausejour's cross was powered home by Kone with a towering header.
Albion restored their lead five minutes into the second half, however, when McAuley got up higher than Kone to plant home a header from a free-kick by Graham Dorrans.
But it was 2-2 on 58 minutes when substitute James McArthur netted with his first touch of the game, arriving at the far post to head home a Shaun Maloney cross.
And there was an ugly incident moments later when Odemwingie, who was warming up near the corner of the West Stand and Birmingham Road End, appeared to exchange words with Baggies fans.
Fitness coach Matt Green was sent to guide the Nigerian back to the dugouts but he again rowed with a fan near the halfway line.
The 31-year-old did not leave the bench again.
And it got worse for the Baggies when more sloppy defending aided the Latics in their winner.
Yacob and Billy Jones were beaten out wide by Maloney, who crossed for McManaman to net from close range.
Albion pushed for an equaliser but Robles twice denied them, keeping out a volley from Dorrans and a header by McAuley.
By Steve Madeley