Wigan's winning run in the Premiership was brought to an end as Blackburn scored three high-quality goals to earn their third away win of the season.
Morten Gamst Pedersen lit up the first half with a superb volley from a narrow angle to give Blackburn the lead.
Arjan de Zeeuw went closest for Wigan, seeing his header cleared off the line.
But Steven Reid's blistering shot from the edge of the box on 53 minutes and substitute Craig Bellamy's late strike secured a deserved win for Blackburn.
With Wigan boss Paul Jewell naming an unchanged side for the third straight game over Christmas, the home side started sluggishly as Blackburn totally dictated the first 20 minutes.
Mike Pollitt had to tip Ryan Nelsen's header from a Blackburn corner - one of four in quick succession - over the bar.
Paul Dickov was the next Rovers player to spurn an opportunity, firing straight at Pollitt after David Bentley's delicate flick played him in.
Rovers' dominance was finally reflected on the scoresheet when Dickov's cross was unintentionally flicked on by Wigan's Gary Teale for Pedersen to skilfully volley in at the back post.
Jason Roberts (centre) could not extend his scoring run at the JJB Stadium
The goal sparked Wigan into life as an attacking force with the striking duo of Jason Roberts and Henri Camara slowly working themselves into the game.
A rapid break brought their first real chance as Camara's cross was sliced into the air by Nelsen but Roberts was harshly ruled to have fouled Brad Friedel.
Wigan's Lee McCulloch had a decent opportunity from 15 yards but embarrassingly fired his shot into row Z behind the corner flag.
Camara and McCulloch both went close, before De Zeeuw's header was cleared off the line by Blackburn's Michael Gray shortly before the break.
Rovers started the second half strongly, with Robbie Savage seeing his long-range effort deflected wide by De Zeeuw.
Wigan's heads never dropped, but soon after Roberts wasted a decent chance and then had a possible penalty shout turned down, Reid put the game beyond Wigan with an unstoppable shot.
Pascal Chimbonda could only partially clear Bentley's awkward cross and Republic of Ireland international Reid lashed the ball past Pollitt into the top corner for a spectacular strike.
Brad Friedel produced a superb save to deny David Connolly after a loose ball broke to the Wigan striker, and that was as close as the home side were to get for the rest of the game.
As Wigan's legs tired, Bellamy followed up his own darting dribble by slotting home after the ball broke to him off a defender inside the box.
Wigan boss Paul Jewell:
"We were average to say the least.
"Blackburn were sharper and quicker and fully deserved their win. It was very unlike Wigan - they outfought us which is what we normally do to other sides.
"This result means we have finished the year on a bit of a low, but we've still had a wonderful year."
Blackburn boss Mark Hughes:
"It was very pleasing and we've really enjoyed ourselves.
"I thought we were excellent from start to finish. Our away form has started to produce results of late and we're delighted with the three points.
"The only frustration was that we didn't convert more of the chances because we made a lot of them."
Wigan: Pollitt, Chimbonda, Jackson, De Zeeuw, Baines (Wright 66), Teale (Connolly 56), Bullard, Kavanagh (Francis 56), McCulloch, Roberts, Camara.
Subs Not Used: Filan, Henchoz.
Blackburn: Friedel, Neill, Khizanishvili, Nelsen, Gray, Bentley (Thompson 86), Reid, Savage, Pedersen (Emerton 84), Kuqi, Dickov (Bellamy 56).
Subs Not Used: Enckelman, Mokoena.
Goals: Pedersen 15, Reid 53, Bellamy 85.
Ref: M Clattenburg (Co Durham).