While Cam Talbot made 32 saves for the Oilers, who are on a 5-1-1 run while keeping their flickering playoff hopes alive, McDavid was at his dominating best.
The Oilers captain opened the scoring with a power-play goal -- his team's first in nine games -- less than two minutes in. He added a goal in the second period and two in the third.
Leon Draisaitl added a goal and two assists for Edmonton, while Yanni Gourde had a goal and an assist for Tampa Bay.
Maple Leafs 7, Ducks 4
Toronto goalie Frederik Andersen (25 saves) had to leave the game with a potential concussion after being hit by Perry with 6:15 left in the second period.
Predators 5, Islanders 4 (OT)
Roman Josi capped a frantic overtime by scoring with 1:18 left as Nashville Predators came back to edge host New York.
The Predators trailed 4-2 early in the second period but forced overtime with 42.2 seconds left in regulation when Ryan Johansen put back a rebound of a shot by P.K. Subban.
Kevin Fiala had his second straight two-goal game for the Predators. Nashville has won three straight, while the Islanders lost for the third time in four games.
Stars 2, Rangers 1
Martin Hanzal's power-play goal 4:05 into the third period proved to be the game-winner as host Dallas came from behind to beat reeling New York.
The Stars have won three consecutive games and have earned points in eight of their past 11 outings.
Hanzal's deciding goal came as he set a screen in front of the net and redirected a shot from the point by Julius Honka past New York goaltender Henrik Lundqvist. David Desharnais gave the Rangers a first-period lead, and Tyler Seguin replied in the second period.
--Field Level Media