Dirk Kuyt headed the Dutch in front after only 10 minutes.
Substitute Robin van Persie turned in Arjen Robben's cross on the hour, before Thierry Henry pulled one back from close range with 19 minutes left.
Robben's angled finish seconds later sunk France and Wesley Sneijder added a fourth from 20 yards in injury time.
The Dutch delivered another masterclass in ruthless finishing and the victory was a tactical triumph for coach Marco van Basten, who saw substitutes Van Persie and Robben emerge to play crucial roles in the win.
France, like Italy before them, had opportunities against the Dutch but were exposed by the brilliant counter-attacking style that has become the trademark of Van Basten's side.
Italy's earlier draw with Romania leaves them both battling with France to reach the quarter-finals.
"We are still trying to get our heads round this," said Van Nistelrooy. "We couldn't expect this as we didn't have the best of form before the tournament started.
"Now it seems everything is falling into place, confidence is there and it lifts the team and makes a lot of difference I think."
Van Basten was delighted with the win, but feels his side can get even better.
"We are very happy to have beaten the world champions and the World Cup finalists in the same week," he said. "We started well but then we were too passive under French pressure towards the end of the first half."