The match got off to a fast start, with chances coming at both ends. Andre Gray had an effort almost immediately from range, before Rob Hulse eluded some poor marking from the hosts but drilled his shot wide, as both teams sent out warning shots.
Luton had another opportunity to take the lead through Gray as his trickery gave him some space for another effort, but a smart save allowed Millwall to mount an attack, and a terrible mistake from Janos Kovacs let the visitors in. The defender miscontrolled an easy ball, allowing James Henry through on goal, and the striker made no mistake, rounding the keeper to put Millwall into an early lead.
Luton almost equalised through a free-kick as a knock-down in the box found Arnaud Mendy, but an instinctive save from David Forde preserved Millwall's lead. The hosts continued to attack, and looked the likelier side to get the second goal, but disaster struck after Henry found Hulse in the area. The big striker's touch was clumsy, and his finish even clumsier, but he had the space to somehow scoop the ball into the net to give his side a commanding 2-0 lead.
Luton came out for the second half with intent but were frustrated by a defensive (and time-wasting) Millwall. Janos Kovacs came close on several occasions to atoning for his early error, as he rose to win several balls from set-pieces, but couldn't make any of them count. Luton's pressure began to fade as the half wore on, and Millwall went close to securing their lead through Andrew Keogh, who missed two chances from Henry crosses, first allowing Mark Tyler to save and then heading wide when he should have scored.
Eventually, Millwall's superior fitness told and they got the third goal to seal their progress. Some fine passing around an exhausted Millwall defence led to John Marquis sending in a fierce drive which Tyler could only parry into the path of Dany N'Guessan, who had a simple finish to wrap up a memorable victory.