West Bromwich Albion cemented their place in the top two with a second successive Christmas win.
But they were given a real fright by a Scunthorpe side that finished the match with nine men after two red cards in the second half.
It was the home side that missed a golden chance to take an early lead when midfield man Garry Thompson dragged a shot wide after racing clear through the middle and into the box with only keeper Dean Kiely to beat.
It was a poor miss and he was left to rue it in the 19th minute when Scotland international midfielder Graham Dorrans rifled Albion in front with his sixth goal of the season after keeper Joe Murphy had only half-pushed out a testing left-wing cross by Marek Cech.
The Baggies, beaten only once on their travels this season, got a grip in midfield through Dorrans and Gonzalo Jara.
As they pressed for a second goal, Chris Brunt fired into the side-netting and rifled another long-range effort just over the bar.
But Scunthorpe hit back with a 47th-minute equaliser when a shot by Josh Wright was defected past Kiely from close range by skipper Rob Jones, his first goal for the club.
The game started to turn against Scunthorpe in the 61st minute when full-back Andy Wright was sent off for a second bookable offence.
Five minutes later Albion were back in front when Dorrans netted from the spot after he had been brought down by Jones.
Substitute Martyn Woolford missed a a great chance to bring Scunthorpe level again when he headed straight at Kiely before there was further penalty and red card drama.
Referee Jonathan Moss of Leeds pointed to the spot again after 74 minutes for David Mirfin's challenge on Luke Moore.
United had midfield man Grant McCann sent off for dissent for protesting about the decision before Dorrans had his spot-kick well-saved by Murphy.
But the Baggies made certain of the points in the 86th minute with a great finish from defender Gianni Zuiverloon.