Ulf Hjertstorm's capture had never been made public and the Swedish ministry refused to give further details.
However, the 63-year-old Hjertstrom told Swedish tabloid newspaper Aftonbladet he had been held captive for 67 days, during which time he had seen eight other captives, mainly Iraqis, killed.
"The last one who died was killed an hour before I was freed. They (the kidnappers) wanted to warn me, show me something," Hjertstrom was quoted as saying on Aftonbladet's website.
Hjertstrom later told a commercial television channel that sometimes he almost wished the captors had killed him after they seemed several times to be about to shoot him, but then fired into the wall next to his head.
"They thought it was very funny," he said of the fake executions.
"After they have done this three or four times, you are mentally dead. You don't care if they shoot you or not, it's almost better if they did," he said.
"After they have done this (fake executions) three or four times, you are mentally dead. You don't care if they shoot you or not, it's almost better if they did"
Freed captive Ulf Hjertstorm
Hjertstrom gave no details of his release, but Aftonbladet said Stockholm had heard he had been captured a month and a half after it happened.
The daily said Sweden was in contact with the captors about a ransom and when talks got nowhere, it asked Britain's secret service to take over. He was freed on 30 May.
Sweden and Britain's foreign ministries declined to comment on the report.
Hjertstrom was described by both the newspaper and TV station as having lived in Baghdad for 14 years as an oil trader.