Malian commandos stormed a luxury hotel in Bamako on Friday after Islamist gunmen took 170 people including many foreigners hostage in the capital of the former French colony, which has been battling rebels allied to al Qaeda for several years.
Dozens of people were reported to have escaped or been freed, but at least three were dead. A security source said the gunmen had dug in on the seventh floor of the hotel as special forces advanced on them. There was no immediate claim of responsibility.
State television showed footage of troops in camouflage fatigues wielding AK47s in the lobby of the Radisson Blu, one of Bamako's smartest hotels. In the background, a body lay under a brown blanket at the bottom of a flight of stairs.
Minister of Internal Security Colonel Salif Traoré said three people had been killed and two wounded by the gunmen, who burst through security at the hotel entrance at 7 a.m (0700 GMT), spraying the area with gunfire and shouting "Allahu Akbar", or "God is great" in Arabic.
Occasional bursts of gunfire were heard as the assailants went through the seven-floor building, room-by-room and floor-by-floor, one senior security source and a witness told Reuters.
State television said 80 hostages had left the building by midday, but an hour later the hotel's website said 124 guests and 13 staff were still inside.
Some people were freed by the attackers after showing they could recite verses from the Koran, while others were brought out by security forces or managed to escape under their own steam.
One of the rescued hostages, celebrated Guinean singer Sékouba 'Bambino' Diabate, said he had overheard two of the assailants speaking in English as they searched the room next to his.
Hiding under bed
"We heard shots coming from the reception area. I didn't dare go out of my room because it felt like this wasn't just simple pistols - these were shots from military weapons," Diabate told Reuters by phone.
Still image from video show a hostage rushed out from the Radisson hotel in Bamako, Mali, November 20, 2015.
"The attackers went into the room next to mine. I stayed still, hidden under the bed, not making a noise," he said. "I heard them say in English 'Did you load it?', 'Let's go'."
The website of the French newspaper Le Monde quoted him as saying the attackers had spoken with a Nigerian accent.
The raid on the hotel, which lies just west of the city center near government ministries and diplomatic offices, came a week after Islamic State militants killed 129 people in Paris, raising fears that French nationals were being specifically targeted.
Twelve Air France flight crew were in the building but all were extracted safely, the French national carrier said.
A Turkish official said five of seven Turkish Airlines staff had also managed to flee. The Chinese state news agency Xinhua said three of 10 Chinese tourists caught inside had been rescued.
Malian President Ibrahim Boubacar Keita cut short a trip to a regional summit in Chad to return to Bamako, his office said. French President Francois Hollande said France would "use all the means available to us on the ground to free the hostages".
A U.S. defense official in Washington said about 25 U.S. military personnel were in Bamako at the time of the incident, and were helping to move civilians to safety.
France said it was dispatching 50 elite counter-terrorism officers to Bamako immediately. Paris has troops in Mali helping to fight Islamists, but they are based in the desert city of Gao, 950 km away.
The identity of the Bamako gunmen, or the group to which they belong, is not known. Malian attackers would be very unlikely to converse in English.
"We saw two of the attackers. One was wearing a balaclava. The other was black-skinned. They forced the first barrier," head of security Seydou Dembele told Reuters. Two security guards were shot in the legs in the early stages of the assault.
Northern Mali was occupied by Islamist fighters, some with links to al Qaeda, for most of 2012. They were driven out by a French-led military operation, but sporadic violence has continued in Mali's central belt on the southern reaches of the Sahara, and in Bamako.
One security source said as many as 10 gunmen had stormed the building, although the company that runs the hotel, Rezidor Group, said it understood that there were only two attackers.
It was not the first time Bamako had come under attack.
An Islamist group claimed responsibility for the death of five people last March in an attack on a restaurant in Bamako popular with foreigners.
And in August, 17 people were killed during an attack on a hotel in Sevare in central Mali, some 600 km (375 miles) northeast of Bamako, that was claimed by the Sahara-based Islamist militant group al-Mourabitoun.
The dead in Sevare included nine civilians, five of whom worked for the U.N. mission in Mali (MINUSMA), as well as four Malian soldiers and four militants.
In the wake of last week's Paris attacks, an Islamic State militant in Syria told Reuters the organization viewed France's military intervention in Mali as another reason to attack France and French interests.
"This is just the beginning. We also haven't forgotten what happened in Mali," said the non-Syrian fighter, who was contacted online by Reuters. "The bitterness from Mali, the arrogance of the French, will not be forgotten at all."