Tom Elliott struck the winner as Millwall came from behind to defeat Aston Villa 2-1 at The Den in the Sky Bet Championship on Saturday afternoon.
Tammy Abraham gave Villa an early lead, but Shane Ferguson equalised shortly before the half-hour mark, with Elliott firing home in the second-half to secure a second victory of the season.
Neil Harris opted to make just one alteration from the side which performed so well at Nottingham Forest on Wednesday night, as Jed Wallace returned from suspension to replace Jiri Skalak, who dropped to the substitutes' bench.
In the first real of the action of the game, Aston Villa took the lead. Conor Hourihane's free-kick was swung into the penalty area and volleyed home by Abraham into the roof of the net.
With 15 minutes on the clock Millwall fashioned their first chance. Great hold-up play by Lee Gregory allowed Jed Wallace to rush forward and get a shot on goal, but it was deflected and then tipped behind by Orjan Nyland.
On 22 minutes Jake Cooper had a chance at a free header from Shaun Williams' corner-kick, but the defender misjudged his jump and nodded over the crossbar. Ryan Leonard then attempted a quick effort at goal but fired well wide.
Four minutes later The Lions were level. Williams' free-kick was lofted to the back post and nodded back across the box by Cooper, where an unmarked Ferguson was waiting to slam home his first goal of the season.
The atmosphere inside The Den rose following the goal and Millwall nearly had a second soon after, but a heroic block from Axel Tuanzebe prevented Williams from putting The Lions into the lead.
Both sides were playing some neat football in soaking wet conditions and it was the home side that were creating the chances as the half drew to a close - Williams just sending a shot over the bar on 40 minutes.
Three minutes into the second half Millwall nudged themselves in front as Elliott pounced on a loose ball inside the box to strike home under Nyland for his first of the Championship campaign.
Ben Amos had to be alert to save a low effort from Jack Grealish, whilst at the other end Cooper sent a half-volley over as both sides looked for the all-important next goal.
On 57 minutes it nearly came for Villa, but James Bree's bullet header from Ahmed Elmohamady's cross thankfully crept wide of the post.
Ferguson's lob from an acute angle troubled Nyland shortly before the hour-mark, whilst on 60 minutes Williams crashed a header against the crossbar and down on to the line - however, it did not cross it.
Gregory confidently took the ball down on 65 minutes and shot from distance, but it went wide. Outrageous skill from Elliott nearly set up a chance for his fellow partner shortly after, but Villa bundled the ball behind for a corner.
Shouts for a penalty-kick - twice - went unnoticed on 68 minutes as a clutch of bodies fell to the ground following a corner, with goalscorer Elliott going off to a standing ovation six minutes as he was replaced by Steve Morison.
Leonard shot over on 81 minutes before the impressive Gregory laid the ball back to Morison, but his shot was deflected behind - Cooper heading over from the resulting corner.
Three side of The Den rose in unison as the final five minutes approached to back The Lions to the end, with Ferguson also receiving a standing ovation as he exited the pitch for Aiden O'Brien with two minutes remaining.
Four nervy minutes of stoppage-time followed but The Lions held firm to claim a second League victory of the season and make it two matches unbeaten going into the international break.
Millwall: Amos, Meredith, Cooper, Williams, J. Wallace, Gregory, Ferguson (O'Brien 88'), Romeo, Elliott (Morison 74'), M. Wallace, Leonard. Subs not used: Archer, Bradshaw, Webster, Tunnicliffe, Skalak.
Scorer: Ferguson 26', Elliott 48'
Aston Villa: Nyland, Taylor, Tuanzebe, McGinn (Bolasie 69'), Grealish, Hourihane (Adomah 87'), Bree, Abraham, Bjarnason, Hutton, Elmohamady (Kodjia 65'). Subs not used: Whelan, Lansbury, Hogan, Bunn.
Scorer: Abraham 7'
Referee: Tony Harrington
Attendance: 14,491 (2,214)