Match ends, Walsall 0, Millwall 3.
Walsall 0-3 Millwall
- From the section Football

Lee Gregory took his seasonal tally to 17 goals as Millwall inflicted a home defeat on second-placed Walsall.
Both keepers were called on to make good saves before Walsall's Anthony Forde rattled the bar from 20 yards.
Gregory converted Jed Wallace's cross to put the Lions ahead before debutant Mahlon Romeo made it 2-0, beating Liam Roberts after a one-two with Wallace.
Hopes of a Walsall fightback ended when Gregory ran onto Shaun Williams' pass to add Millwall's third.
Millwall's unbeaten run is now up to five games, keeping them sixth in League One, only one point behind fifth-placed Coventry, while Walsall remain second despite their fourth home defeat of the campaign.
The Saddlers had third-choice keeper Roberts making his debut in goal following injuries to Neil Etheridge and his deputy Craig MacGillivray. They then lost top scorer Tom Bradshaw to an early second-half injury,
Walsall head coach Sean O'Driscoll told BBC WM 95.6:
"They're disappointed more with the scoreline than the way we performed. We got caught, I suppose, chasing the game that was always going to be reliant on whoever scored first.
"It was always going to be a second ball game, them getting it forward early to (Steve) Morison and Gregory to play off that.
"For a large part, we did really well, just couldn't quite get a goal - blocks on the line and hitting the post, hitting the bar, but their spirit was really good."
Millwall manager Neil Harris told BBC Radio London:
"Walsall are a really good team, but the league table doesn't lie, especially when you get into February.
"It was a stern test for us and we had to stay in the game at times and we had to dig in, we had to throw our bodies on the line and I thought we did that.
"The youngsters are getting a lot of praise, and rightly so because they're a good group."
Line-ups
Walsall
- 23Roberts
- 3TaylorSubstituted forMorrisat 75'minutes
- 4O'Connor
- 6Downing
- 2Demetriou
- 14Henry
- 7ChambersSubstituted forLalkovicat 76'minutes
- 8Mantom
- 12Forde
- 10Sawyers
- 9BradshawSubstituted forCookat 50'minutes
Substitutes
- 15Lalkovic
- 16Preston
- 18Morris
- 21Cook
- 22Kinsella
- 27Morris
- 30Jezeph
Millwall
- 13Archer
- 18Ferguson
- 17Webster
- 15Nelson
- 27RomeoBooked at 14mins
- 8Upson
- 26Abdou
- 6Williams
- 25WallaceSubstituted forMartinat 75'minutes
- 9GregorySubstituted forO'Brienat 88'minutes
- 20MorisonSubstituted forMarquisat 88'minutes
Substitutes
- 1Forde
- 3Martin
- 10Onyedinma
- 14Marquis
- 22O'Brien
- 24Thompson
- 36Wood
- Referee:
- Trevor Kettle
- Attendance:
- 4,843
Match Stats
- Possession
- Home53%
- Away47%
- Shots
- Home7
- Away8
- Shots on Target
- Home4
- Away6
- Corners
- Home6
- Away4
- Fouls
- Home9
- Away8
Live Text
Full Time
Second Half ends, Walsall 0, Millwall 3.
Hand ball by Ed Upson (Millwall).
Substitution
Substitution, Millwall. John Marquis replaces Steve Morison.
Substitution
Substitution, Millwall. Aiden O'Brien replaces Lee Gregory.
Mahlon Romeo (Millwall) wins a free kick in the defensive half.
Foul by Milan Lalkovic (Walsall).
Attempt saved. Milan Lalkovic (Walsall) right footed shot from the centre of the box is saved in the bottom right corner.
Goal!
Goal! Walsall 0, Millwall 3. Lee Gregory (Millwall) right footed shot from the centre of the box to the bottom left corner. Assisted by Shaun Williams.
Substitution
Substitution, Walsall. Milan Lalkovic replaces Adam Chambers.
Substitution
Substitution, Walsall. Kieron Morris replaces Andy Taylor.
Substitution
Substitution, Millwall. Joe Martin replaces Jed Wallace.
Foul by Lee Gregory (Millwall).
James O'Connor (Walsall) wins a free kick in the attacking half.
Corner, Walsall. Conceded by Sid Nelson.
Foul by Lee Gregory (Millwall).
James O'Connor (Walsall) wins a free kick in the attacking half.
Attempt missed. Anthony Forde (Walsall) right footed shot from outside the box is just a bit too high.
Goal!
Goal! Walsall 0, Millwall 2. Mahlon Romeo (Millwall) right footed shot from the right side of the box to the bottom left corner.
Goal!
Goal! Walsall 0, Millwall 1. Lee Gregory (Millwall) left footed shot from the centre of the box to the bottom left corner. Assisted by Jed Wallace.
Attempt missed. Lee Gregory (Millwall) right footed shot from outside the box is close, but misses the top right corner.
Attempt saved. Adam Chambers (Walsall) header from the centre of the box is saved in the centre of the goal.
Corner, Walsall. Conceded by Shane Ferguson.
Jordan Cook (Walsall) wins a free kick in the defensive half.
Foul by Sid Nelson (Millwall).
Byron Webster (Millwall) wins a free kick on the right wing.
Foul by Jordan Cook (Walsall).
Attempt missed. Jed Wallace (Millwall) right footed shot from very close range is just a bit too high.
Substitution
Substitution, Walsall. Jordan Cook replaces Tom Bradshaw because of an injury.
Sid Nelson (Millwall) wins a free kick in the attacking half.
Foul by Paul Downing (Walsall).
Corner, Walsall. Conceded by Shane Ferguson.
Second Half
Second Half begins Walsall 0, Millwall 0.
Half Time
First Half ends, Walsall 0, Millwall 0.
Anthony Forde (Walsall) hits the bar with a left footed shot from outside the box.
Corner, Millwall. Conceded by James O'Connor.
Corner, Millwall. Conceded by Rico Henry.
Lee Gregory (Millwall) wins a free kick in the attacking half.
Foul by James O'Connor (Walsall).
Attempt missed. Sam Mantom (Walsall) left footed shot from outside the box is high and wide to the right.