Iraqi forces backed by Shiite militias recaptured key parts of the strategic town of Baiji from ISIS militants, officials said on Sunday.
Baghdad captured Baiji last year but ISIS militants seized it again in an offensive.
"Our security forces arrived to the centre of the town of Baiji around 10:30am (0700 GMT) and raised the Iraqi flag," a high-ranking general told AFP.
Baiji, located about 250 kilometres north of Baghdad, is a strategical town as it connects the ISIS-held city of Mosul with the capital. It is also home to Iraq’s largest oil refinery.
ISIS militants seized Mosul last year in a shocking offensive, which saw Iraqi troops fleeing the city.
Iraqi army and allied Shiite militias have managed to roll back ISIS in several parts of the country and recaptured the city of Tikrit in April.
However, ISIS militants seized the city of Ramadi in May, the capital of Anbar province.