The 51-year-old taxi owner was shot in the head as he walked into Noord Street from his flat building around 08:00, Warrant Officer Xoli Mbele said.
He died on the scene. The bullet struck a bystander, aged 32, walking behind the man, in the upper body.
When people tried to chase after the shooter, he fired a second shot, hitting a 50-year-old man.
Netcare 911 spokesperson Santi Steinmann said one of the wounded men said he was walking when he heard gunshots, and then noticed he had been wounded.
Steinmann said both men were seriously wounded. They were taken to a nearby hospital. No arrests had yet been made.
Mbele appealed to anyone who had witnessed the shooting to contact police.