Pierce County sheriff's spokesman Ed Troyer said the incident began about 12:40 a.m. when a deputy pulled over the driver in the 6900 block of Highway 702.
As the deputy was running the driver's license plate, the man got out of his car and started walking toward the deputy while holding a handgun.
The man said "it all ends here" as he approached the deputy, who eventually opened fire, Troyer said.
The 50-year-old Yelm man died at the scene. His name has not been released and it was not clear if he fired any shots.
The deputy was not hurt.
"We're looking at the possibility it could be a suicide by cop," Troyer said. "We're going to do an investigation into him and see what led up to him being in this state of mind."
Investigators closed the road for several hours while they collected evidence at the scene.