Xavier Bourgault scored twice, and Ben Gleason had two assists for Edmonton. Jack Campbell made 32 saves.
Kailer Yamamoto scored, and Philipp Grubauer allowed three goals on 13 shots for Seattle.
McDavid gave the Oilers a 2-1 lead at 2:49 of the third when he skated into the bottom of the left circle and beat Grubauer five-hole.
Bourgault pushed it to 3-1 at 8:21, and Mattias Janmark scored into an empty net with seven seconds remaining for the 4-1 final.
Bourgault gave Edmonton a 1-0 lead at 6:38 of the first period.
Yamamoto tied it 1-1 with a power-play goal at 13:35.