Iraqi forces advanced against the Islamic State jihadist group in Baiji on Sunday as they battled to retake the strategic town for a second time, officers said.
Baghdad regained control of Baiji -- located on the road to IS hub Mosul and near the country's largest oil refinery -- last year, but subsequently lost it again.
"Our security forces arrived to the centre of the town of Baiji around 10:30 am (0700 GMT) and raised the Iraqi flag," an army major general told AFP.
The officer said that Iraqi forces were shelling "terrorists hideouts" in the town with mortar rounds.
A police colonel confirmed that Iraqi forces were making progress, saying they were in control of the city centre and were "advancing toward the northern neighbourhoods of the town."
Security forces are also fighting to push IS out of the nearby Baiji refinery, a vast complex, which once produced 300,000 barrels per day of refined products meeting half of the country's needs.
IS spearheaded a sweeping militant offensive last June that overran Iraq's second city Mosul in less than 24 hours and then seized much of the country's Sunni Arab heartland.
IS has been driven out of some areas north of Baghdad, but still holds much of western Iraq.