At least ten people are reported to have been killed at a Western-style hotel in the Afghan capital Kabul.
At least one suicide bomber blew himself up and at least six gunmen were thought to be inside the Inter-Continental Hotel.
Witnesses reported hearing three explosions and said several gunmen had got into the high-security hotel late in the evening.
The brazen strike was claimed by the Taliban.
“It’s an attack on the Intercontinental Hotel,” said Kabul criminal investigations chief Mohammad Zahir.
“Five to six gunmen have taken shelter inside the building of the hotel.”
Zahir said that one suicide attacker had blown himself up so far and “a number” of police had been injured in the ongoing fighting, including he himself who had been shot in the leg.
The BBC reported at least ten people had been killed in the attack.
An Afghan intelligence official at the hotel told the BBC that security forces were still fighting the attackers, and that one of them had managed to reach the roof, from where he was firing an AK-47 assault rifle and throwing grenades.
“We are covering a lot of area in and around the hotel. But we have a lot of guests in the room that we want to protect,” he said.
A government source, speaking on condition of anonymity, said the mayor of Kabul was among those staying at the hotel, while another indicated that a wedding party was under way when the attack started.
Taliban spokesman Zabihullah Mujahid claimed the militant Islamist group was behind the attack which he said was targeting foreign guests in the hotel.
AFP reporters close to the scene reported hearing at least three explosions within the space of about an hour and heavy machine gun fire.
Witness Sayed Hussain said he was inside the hotel compound when the attack started.
“I saw five to six men in civilian clothing armed with rifles who started shooting when they entered,” he said, speaking close to the scene. “I lay down on the ground and soon after the police arrived.”
He added that police and the attackers then traded fire for about 10 to 15 minutes before he heard a loud explosion.
AFP reporters said that the hotel was in darkness after power in the area had apparently been cut. Traffic had also been diverted from the area and police were out in force with more arriving, he added.
The Intercontinental is one of Kabul’s best-known high-end hotels, boasting luxuries such as a swimming pool and a tennis court.
It is situated on a hill above the city and was established in 1969.
Security at most luxury hotels in Kabul was significantly stepped up after a 2008 attack on the Serena Hotel in the city centre killed seven people including at least three foreigners.
On that occasion, Taliban attackers disguised as police stormed the interior.
The attack comes weeks before foreign forces are expected to start withdrawals from Afghanistan, although security in the capital Kabul is already under the control of Afghan security forces.
Some 10,000 United States troops will leave Afghanistan this year, US President Barack Obama announced last week, ahead of the planned end of foreign combat operations at the end of 2014.
However, some experts question the ability of Afghan security forces to withstand a bloody Taliban insurgency which has run for nearly ten years.
There are currently around 150,000 foreign forces in Afghanistan, roughly 99,000 of them from the United States.
Kabul was due to host a conference on the transition from foreign to Afghan forces featuring senior provincial officials from around Afghanistan starting Wednesday.
The Afghan capital has been relatively stable in recent months despite frequent security alerts.
But nine people were killed earlier this month when three attackers, at least one of whom was in army uniform, armed with suicide vests and machine guns stormed a police station in the heart of the city.