Sveriges Radio said on its website that Horner, who held dual Swedish and British citizenship, was their South Asia correspondent, TheLocal.se reported
"This is one of the worst days in the history of Sveriges Radio," Cilla Benko, the network's chief executive officer, said.
"Nils was one of our absolute best and most experienced correspondents and what has happened to him today is horrible. We're doing our best to gather all the details."
No group had taken responsibility for the slaying and Taliban denied it was to blame. The New York Times reported it was unclear whether Horner was targeted specifically, whether the intent was to kill any foreigner or perhaps it was a case of mistaken identity.
TheLocal.se said a witness, who did not want to be identified, reported hearing a single shot and seeing Horner crumple to the ground.
"There were two guys who ran away. They were perhaps in their twenties and security guards chased them," the witness said.
Horner was pronounced dead on arrival at a hospital, a doctor said.
Police Col. Najibullah Samsour said the 51-year-old reporter was talking to security guards outside a Lebanese restaurant about a news story he was pursuing when he was shot, the Times said.
Horner had arrived in Kabul a few days earlier, Samsour said. He apparently was doing a story about an earlier attack on another Lebanese restaurant in the city in which 21 people died.
The U.S. newspaper said it had been years since a foreign journalist appeared to have been singled out for such an attack in the Afghan capital.