Police say the car was headed east on Kelly Drive when it suddenly veered out of control around 12:30 p.m. just short of Boathouse Row.
The car crossed two lanes and then plunged into the river.
44-year-old John Reynolds, a plumber from Havertown, saw the car go in the water.
He says he saw the driver struggling to get out of the car before it went under.
Reynolds grabbed a mallet and jumped into the frigid water.
He says he smashed out the rear window and managed to grab hold of the driver.
But the car started sinking rapidly.
Reynolds realized he would go down with it if he didn't let go.
He says he barely had the strength to swim back to shore.
Police divers were on the scene a few minutes later.
They say it was clear, no one got out of the car.
"All the windows were up and everything was closed, so nobody fell out of the vehicle when it hit the water," Anthony Kowalski of the Police Marine Unit said.
Kowalski says he only had about five feet of visibility and, at first, had trouble finding the driver.
He says he couldn't find anyone in the front seats, but then checked the back
"I went in to the back door and that's where I found the male, he was in the backseat," Kowalski said.
The driver was rushed to the Hospital of the University of Pennsylvania and was pronounced dead a short time later.
Police are withholding his name until his family is notified.
Reynolds suffered cuts to his wrist, arm and shoulder as he struggled to get to the driver through the broken glass.
Reynolds has a wife and four children.
They have been through some harrowing ordeals.
Two years ago their house burned down.
And today Reynolds was lucky to get out of the river alive after trying to save another man's life.