There are
271 mi
from Gresham, OR to Oak Harbor, WA
That's the driving distance. It would take 5 hours 35 mins to go from Gresham, Oregon to Oak Harbor, Washington.
The flight distance (direct flight from Gresham, OR to Oak Harbor, WA) is 193.25 mi.
271 mi = 435.54 kms