Jed Wallace's early free-kick gave Millwall a crucial 1-0 win over nine-man Reading in the Sky Bet Championship at The Den on Boxing Day.
The winger curled home just eight minutes in to score the only goal of a game which saw Tyler Blackett and Leandro Bacuna given their marching orders by referee Andy Davies.
The victory takes The Lions out of the bottom three - above their opponents - and also secures a first success since 27th October.
Millwall boss Neil Harris opted to keep his starting XI from last Saturday's narrow loss at Stoke City the same, with two changes coming on the bench - James Brown replaced the injured Conor McLaughlin, whilst Jiri Skalak returned from illness in place of Byron Webster.
Ryan Leonard was the first to get the Den crowd off their feet as early as the second minute, charging down Reading's back-line and Anssi Jaakkola's attempted clearance.
With six minutes on the clock a deep free-kick was nodded down by Shaun Hutchinson, but Tom Elliott's shot was saved by Jaakkola. Shane Ferguson and then Leonard both punished some slack Reading defending, with the latter leading to the opening goal - Jed Wallace curling home a delightful free-kick from around 20 yards out.
The Royals' start got worse from there as Blackett was shown a straight red card for a strong tackle on the goalscorer.
The visitor's incredible reluctance to not play out from the back was costing them dearly - Ryan Tunnicliffe nearly doubled the lead as The Royals failed to get out of their own penalty area from a goal-kick on 18 minutes, but his shot was blocked behind; a combination of Hutchinson and Lee Gregory could not force the resulting corner-kick over the line.
More efforts on goal were deflected behind as The Lions were assertive and dominant in attack - Ferguson curling just wide with a cross-cum-shot with 20 minutes on the clock. Reading's first attempt came two minutes later, but John Swift barely troubled Jordan Archer from range.
Reading enjoyed a spell of possession from there, but did not work Archer. Ferguson swung over a corner at the other end three minutes from the half-time break, but Elliott headed over the crossbar. Gregory was the last to have an attempt on goal in the half, but it was blocked. The striker nearly stole Bacuna's header away from Jaakkola seconds before the whistle, but the stopper claimed at a stretch.
The second-half was just seconds old when Jed Wallace took the ball down neatly and turned on the edge of the six-yard box, but his shot went wide. Danny Loader curled The Royals' first attempt of the half into Archer's arms on 51 minutes, whilst a neat move ended with Leonard firing just wide at the other end.
A neat one-two between Jed Wallace and Tunnicliffe nearly paid dividends on the hour-mark, but the latter was just unable to steer the former's lofted pass towards goal.
On 72 minutes The Royals were inches away from levelling the scores - a lick of paint, in fact - as Swift struck the crossbar with a free-kick from range. That served as a wake-up call for The Lions, who responded with a strike of the woodwork of their own, as Cooper headed on to the post.
Three minutes from time Reading's ranks were further depleted as Bacuna was shown a straight red card for needlessly involving himself in an altercation after Davies had blown for a foul on Ferguson.
Millwall: Archer, Meredith, Hutchinson, Cooper, J. Wallace (O'Brien 76'), Gregory, Ferguson (Skalak 89'), Romeo, Tunnicliffe, Elliott (Morison 57'), Leonard. Subs not used: Amos, Karacan, M. Wallace, Brown.
Scorer: J. Wallace 8'
Booking: Elliott, Gregory, Ferguson
Reading: Jaakkola, Yiadom, Moore, Bacuna, Swift (Osho 82'), Barrow, Meite (McCleary 73'), Blackett, Richards, Rinomhota, Loader (Baldock 63'). Subs not used: Mannone, O'Shea, Meyler, Aluko.
Sent Off: Blackett, Bacuna
Referee: Andy Davies
Attendance: 12,202 (572)