"We are aware that armed criminals are holing up in the hotel, and special forces are now currently flushing them out," said Kenya's national police chief, Joseph Boinnet, describing the assault as a suspected terror attack.
He gave no details on the number of dead or wounded. But a Kenyan police officer who was among the first on the scene said: "There was no time to count the dead but it is true that there are people who are dead."
The officer, who spoke on condition of anonymity because he was not authorized to talk to the media, said that some bodies were in restaurants downstairs and that colleagues saw others in offices upstairs.
Kenyan hospitals appealed for blood donations even as the number of wounded remained unknown.
The violence appeared to fit the pattern of attacks al-Shabbab often carries out in Somalia's capital, with an explosion followed by a group of gunmen storming the place.
Like the Westgate Mall attack, this one appeared aimed at wealthy Kenyans and foreigners living in the country. The hotel complex is in a well-to-do section of Nairobi that has large numbers of expatriates from the US, Europe and India.
The attack came a day after a magistrate ruled that three men must stand trial on charges they were involved in the Westgate Mall siege. A fourth suspect was freed for lack of evidence.
The violence left blood and glass all over. Several vehicles burned, sending black smoke rising over the complex. People were rushed, some carried, from the scene. Some ducked behind cars, screaming, while others took cover behind fountains and other features at the lush complex.
Ambulances, security forces and firefighters converged on the scene along with a bomb disposal unit, and vehicles were cordoned off for fear they contained explosives. Police said they blew up a car that had explosives inside. An unexploded grenade was also seen in a hallway at the complex.
Security forces hurried out a large group of women, one of them still in curlers. Dozens of others were rushed to safety as plainclothes officers went shop to shop in the complex. Some people held up their hands to show they were unarmed.
Al-Shabab has vowed retribution against Kenya for sending troops to Somalia since 2011. The al-Qaida-linked group has killed hundreds of people in Kenya, which has been targeted more than any other of the six countries providing troops to an African Union force in Somalia.
The attack immediately brought to mind the Westgate Mall massacre, when al-Shabab extremists burst into the luxury shopping center, hurling grenades and starting a dayslong siege. Tuesday's violence also came three years to the day after al-Shabab extremists attacked a Kenyan military base in Somalia, killing scores of people.
The hotel complex in Nairobi's Westlands neighborhood is about 2km from Westgate Mall on a relatively quiet, tree-lined road in what is considered one of the most secure parts of the city. The hotel's website says it is "cocooned away from the hustle and bustle in a secure and peaceful haven."
On Monday, the Dusit hotel promoted its stay by tweeting: "Is your new year off to a rough start?"