Tammy Abraham crashed an early drive against the United bar but the hosts got in front with an 18th-minute Rashford penalty after Kurt Zouma pulled the England forward down.
Chelsea, who had been the more creative in the opening half, went close to an equaliser when Emerson struck the post shortly before the break.
But the game turned decisively in Ole Gunnar Solskjaer’s side’s favour when, after a Rashford led counter-attack, Anthony Martial bundled in a low cross from Andreas Pereira in the 65th.
Two minutes later, Chelsea’s defence was again exposed when Rashford timed his run to perfection to latch on to a long ball from Paul Pogba and beat goalkeeper Kepa Arrizabalaga with a confident finish.
Substitute Daniel James, a close-season signing from Swansea City, then marked his United debut with the fourth, firing into the bottom corner via a deflection after being set-up by Pogba.
Arsenal outclass Newcastle
At St James’ Park, Gabon striker Aubameyang notched the only goal 13 minutes into the second half to inflict a defeat on Steve Bruce in his first match as Newcastle manager.
The game was played out in front of a crowd of 47,635, almost 5,000 below capacity, as some fans staged a boycott over owner Mike Ashley’s running of the club, and while the Magpies gave as good as they got for long periods – Jonjo Shelvey hit a post before the break – they struggled to create chances and were made to pay for it.
Leicester and Wolves draw
Leicester and Wolves drew 0-0 in the other early match, with the video assistant ruling out a Leander Dendoncker goal for Wolves.
The midfielder’s second-half strike was chalked off after replays showed a handball by Willy Boly, ensuring a 0-0 draw at the King Power Stadium.
It was the only serious incident of a forgettable game between two sides expected to challenge for Europe this season.