Ukrainian troops have launched an attack on Donetsk Airport, retaking territory from rebel separatists, according to a military spokesman.
Houses were destroyed and electricity was cut for many homes and businesses as explosions repeatedly ripped through parts of the Donetsk region.
With rebels at one point claiming to control the airport, about 10 Ukrainian tanks rumbled across the snow toward the front lines on Saturday to reinforce soldiers desperately trying to defend it, local television showed.
"The decision was taken for a mass operation," said military spokesman Andriy Lysenko during a televised briefing.
"We succeeded in almost completely cleaning the territory of the airport, which belongs to the territory of Ukrainian forces as marked by military separation lines," he added.
Mr Lysenko said the operation had returned the battle lines near the blacked and wrecked site to where they were before, suggesting the Ukrainian army had not violated the Minsk 12-point peace plan agreed with Russia and separatist leaders last September.
Streets around Donetsk are reportedly deserted amid sounds of constant shelling and rocket fire from the vicinity of the airport overnight.
Rebel officials have reported at least two civilians killed, bringing the toll since Thursday to at least 23 dead, including 13 Ukrainian soldiers.
Aerial footage shot by a drone and uploaded to YouTube on Friday shows terminal buildings and other structures at the airport in a state of complete destruction after months of conflict.
Its cratered runways mean it has not functioned for months as an airport. But it has symbolic value for both sides and has become a flashpoint in the fighting.
The 12-point pact signed in Minsk in September 2014 was the first to win the backing of both Kiev and Moscow after five months of warfare that set off the deepest crisis in East-West relations for a generation.
Meanwhile, Ukraine's president has vowed to reassert control over his country's eastern regions - with fighting at a new level of intensity.
Petro Poroshenko told a crowd of several thousand gathered in central Kiev that Ukraine would not "give up an inch" of its land.