Match ends, Fulham 4, Millwall 0.
Ivan Cavaleiro scored twice and Aleksandar Mitrovic netted his third goal in as many games as free-flowing Fulham demolished Millwall to register a third successive Championship victory.
Cavaleiro lashed a fine opener into the top corner for Fulham - who enjoyed a remarkable 84.5% possession - and later latched on to Tom Cairney's pass to round Bartosz Bialkowski for their fourth goal.
In between, the Wolves winger crossed for fellow loanee Anthony Knockaert, on loan from Brighton, to open his Fulham account with a stooping header.
Mitrovic scored Fulham's third from the penalty spot after being brought down by Bialkowski as the Cottagers brought Millwall's unbeaten start to the season to a resounding halt.
The scoreline did not flatter Scott Parker's side, who outmatched Millwall in every department and produced a real statement performance as they seek an immediate return to the Premier League.
Before Cavaleiro opened the scoring, Mitrovic saw a header well saved by Bialkowski but after that Fulham were truly clinical with their finishing.
The Portugal winger, who scored Fulham's winner at Huddersfield on Friday, cut inside and past two men to fire home a brilliant opening goal and then set up the hosts' second on a plate for Knockaert.
Millwall, who had won two and drawn one of their opening three games, had their best spell early in the second half but former Fulham striker Matt Smith poked a weak effort straight at Marcus Bettinelli.
From there, Steven Sessegnon saw a cross deflected on to the bar before Mitrovic's spot-kick, won by his alertness in the box, and Cavaleiro rounded off the rout.
Fulham had lost their past 10 London league derbies - all in the top-flight last season - but put that miserable run to an end against the Lions who were the last side they beat in a capital clash in April 2018.
The Cottagers confirmed after the game that Portuguese striker Rui Fonte, who has scored just three goals in 29 appearances since joining Fulham in 2017, has rejoined former club Braga on a permanent transfer.
Fulham manager Scott Parker told BBC Radio 5 Live:
"It was good to watch for me at times. Everything we have worked on over the last 10 weeks since pre-season came to fruition.
"We sent a message to ourselves and credit to the players, because a lot of information has gone into them and they took everything on board and worked hard to get a performance like that.
"If there is one thing we are always talking about it is mentality and dealing with what this league brings. After last season when we got relegated, sometimes losing can become a habit.
"To start winning, momentum kicks on and that is very pleasing."
Millwall manager Neil Harris told BBC Radio London:
"It's not nice as a manager to say you deserved to get beat heavily but they were better than us, much better than us.
"We have been beaten by a very, very good side. On the money they have spent, they should be a Premier League side and I expect them to go on and win the league this year.
"We won't be the only team that comes here and gets done like that this season.
"We were far too passive in the first half but at 2-0 you still feel like you are in with a chance and for 10 minutes in the second half we were better than them. But the two clear-cut chances we had, we didn't score and then they go down the other end and get a penalty and the game's over."
- 43S Sessegnon
- 10CairneySubstituted forDe Cordova-Reidat 69'minutes
- 18ArterSubstituted forMcDonaldat 75'minutes
- 24KnockaertBooked at 28mins
- 9MitrovicBooked at 25mins
- 19CavaleiroSubstituted forKamaraat 79'minutes
- 14De Cordova-Reid
- 20Le Marchand
- 5CooperBooked at 25mins
- 3M Wallace
- 6WilliamsSubstituted forSmithat 45'minutes
- 26SkalakSubstituted forFergusonat 39'minutes
- 8ThompsonSubstituted forMolumbyat 75'minutes
- Darren Bond
- Shots on Target
Second Half ends, Fulham 4, Millwall 0.
Attempt missed. Aleksandar Mitrovic (Fulham) left footed shot from outside the box is high and wide to the left. Assisted by Anthony Knockaert.
Marcus Bettinelli (Fulham) wins a free kick in the defensive half.
Foul by Matt Smith (Millwall).
Foul by Tim Ream (Fulham).
Tom Bradshaw (Millwall) wins a free kick on the right wing.
Foul by Stefan Johansen (Fulham).
Ryan Leonard (Millwall) wins a free kick in the defensive half.
Corner, Fulham. Conceded by Mahlon Romeo.
Attempt saved. Aboubakar Kamara (Fulham) right footed shot from outside the box is saved in the bottom right corner. Assisted by Anthony Knockaert.
Offside, Millwall. Murray Wallace tries a through ball, but Tom Bradshaw is caught offside.
Corner, Millwall. Conceded by Tim Ream.
Substitution, Fulham. Aboubakar Kamara replaces Ivan Cavaleiro.
Bobby De Cordova-Reid (Fulham) wins a free kick in the defensive half.
Foul by Jayson Molumby (Millwall).
Offside, Millwall. Bartosz Bialkowski tries a through ball, but Matt Smith is caught offside.
Substitution, Fulham. Kevin McDonald replaces Harry Arter.
Substitution, Millwall. Jayson Molumby replaces Ben Thompson.
Foul by Harry Arter (Fulham).