The town – which sits in the Donetsk region and had a pre-war population of 70,000 – has been the centre of Russian attacks for months.
Despite a looming Ukrainian advance on the key city of Kherson, Mr Zelensky said the attacks continued in force.
Taking the town would be a symbolic victory for Russia.
“This is where the craziness of the Russian command is most evident,” Mr Zelensky said in his nightly address from Kyiv. “Day after day, for months, they are driving people to their deaths there, concentrating the highest level of artillery strikes.”
Oleksiy Arestovych, an advisor to Mr Zelensky, said on one day Russian forces launched eight separate attacks on Bakhmut before lunchtime and had been pushed back on each occasion.
The city sits on a main road leading to the Ukrainian-held cities of Sloviansk and Kramatorsk. While Russia is struggling elsewhere in Ukraine, its forces have made progress around Bakhmut in recent weeks.
Analysts say the city has little military value in itself, though if it were to fall it would bring other cities back within range of Russian artillery and help change the narrative of a conflict in which Moscow’s forces have been gradually retreating.
Regular Russian troops in the region are reportedly being supported by Wagner paramilitary mercenaries. The group’s founder Yevgeniy Prigozhin is said to want to capture the town as a political prize.
On Sunday, the mercenary chief acknowledged the slow pace of the Russian advance on Bakhmut, saying troops were gaining only “100-200 meters a day”.
“Our units are constantly meeting with the most fierce enemy resistance, and I note that the enemy is well prepared, motivated, and works confidently and harmoniously,” Mr Prigozhin said in a statement published by one of his companies. “This does not prevent our fighters from moving forward, but I cannot comment on how long it will take.”
Despite the intense attacks, Mr Zelensky said Ukrainian forces were holding their ground and hailed his troops as “heroes”.