Yousuf Raza Gilani, Pakistan’s prime minister, “strongly condemned” the bombing, and expressed his government’s resolve to continue action against extremists, a statement from his office said.
The attack in Peshawar’s Khyber Bazaar was the bloodiest to hit the country in the last six months.
Zafar Iqbal, the registrar of Peshawar’s main Lady Reading Hospital, said: “We have 49 dead bodies brought to the hospital. Three of them are women and seven are children.”
All of the dead were civilians, he added.
Bashir Ahmad Bilour, a senior provincial minister, confirmed the death toll, saying that more than 100 people had been injured in the blast.
At least 12 shops were completely destroyed, while passers-by desperately tried to free survivors from the wreckage of a destroyed bus.
Shafqat Malik, the bomb disposal squad chief, said that police evidence suggested the suicide bomber had rammed a car with explosives and machine-gun ammunition packed into its side panels into the crowded bus.
Despite interior minister Malik’s assertion that the Taliban were behind the attack, there was no immediate claim of responsibility.
Kamal Hyder, Al Jazeera’s correspondent in the Pakistani capital, Islamabad, said: “What is surprising everyone is that immediately after the attack, the provincial information minister came out and said that he knew where the attack came from, and started saying that people should be united against the Taliban, even though the Taliban have not claimed responsibility.”
The US has been pushing Pakistan to take strong action against fighters who it says are using Pakistani soil as a base for attacks in neighbouring Afghanistan.
The Pakistani military has launched a number of offensives against the Taliban in the past and its efforts received a boost with the killing of Baitullah Mehsud, a Taliban leader, in a US missile attack.
But despite what are seen as successful campaigns in the Swat Valley and adjoining Buner district, the army has been beaten back on three previous offensives into the Taliban heartland of South Waziristan.