At least 28 people were killed and 61 wounded by a car bomb targeting the Turkish military in the heart of the capital Ankara, the latest in a string of attacks to shake the country.
The blast struck a convoy of military vehicles, said Deputy Prime Minister Numan Kurtulmus, confirming the latest toll. It was unclear who had carried out the attack.
President Recep Tayyip Erdogan vowed retaliation against the perpetrators of the attack, which came on the heels of a spate of deadly strikes in Turkey blamed on jihadists and also Kurdish rebels.
The car bomb detonated when a convoy of military buses carrying dozens of soldiers stopped at traffic lights in central Ankara, sparking panic and chaos.
"This attack has very clearly targeted our esteemed nation as a whole and was carried out in a vile, dishonourable, treacherous and insidious way," said Kurtulmus.
Plumes of smoke could be seen from all over the city rising from the scene, close to the headquarters of the Turkish military and the parliament.
The powerful blast was heard throughout Ankara, sending alarmed residents rushing to their balconies.
"I saw a huge fireball growing," 25-year-old witness Gurkan, who said he was standing 500 metres (yards) from the scene, told AFP.
"People started to run in all directions in panic as soon as we heard a strong explosion."
The army said the attack took place at 1631 GMT and had targeted "service vehicles carrying army personnel".
- 'Right to self defence' -
Without specifying what the retaliation could entail, Erdogan warned that "Turkey will not shy away from using its right to self-defence at any time, any place or any occasion".
The bombing prompted Prime Minister Ahmet Davutoglu to scrap a planned trip to Brussels on Thursday to discuss Europe's migrant crisis. Erdogan also shelved a trip to Azerbaijan.
In Ankara, ambulances and fire engines were sent to the scene and wounded victims were seen being taken away on stretchers.
Images showed firefighters trying to overcome a fierce blaze engulfing the gutted service buses.
Turkish police threw a security cordon around the area. A second blast later rocked the area, an AFP correspondent said, but officials said this was police detonating a suspicious package.
Washington in a statement strongly condemned "the terrorist attack on Turkish military personnel and civilians" and reaffirmed US solidarity with the key NATO partner.
NATO Secretary General Jens Stoltenberg said the alliance strongly condemned the bombing. "NATO Allies stand shoulder to shoulder in the fight against terrorism," he said.
The EU pledged to stand "with Turkey and its people in these difficult times".