It happened around 6:00 Sunday night on the 600 block of East Ontario Street.
Police say that two men were inside a Honda Accord when a man walked up, opened the passenger door and got into a dispute with the driver.
The man exchanged gunfire with the driver and was shot in the torso. He was pronounced dead at the scene.
The driver - a man in his 20s - suffered gunshot wounds to the chest and the arm.
He was taken to Temple University Hospital in critical condition.
Police say the driver did have a registered weapon and the other man did not.
No word what sparked the altercation.