Iraqi forces captured the city of Kirkuk on Monday from Kurdish fighters in response to Kurdistan's vote on independence.
A convoy of armoured vehicles from Iraq's counter-terrorism forces seized the provincial government headquarters in the centre of Kirkuk, less than a day after the operation began.
Kirkuk's governor Najm Eddine Karim, who refused to step down after being sacked in response to the province taking part in the vote last month, was not there at the time.
It comes three weeks after the Iraqi Kurdistan region held a controversial independence vote that included the city of Kirkuk, although it lies outside the Kurdistan region.
Iraq’s prime minister Haider Al Abadi, said the vote, which overwhelmingly backed secession, was "unconstitutional".
On Monday, Mr Al Abadi said the operation in Kirkuk was necessary to "protect the unity of the country, which was in danger of partition" because of the referendum.
Baghdad described the advance as largely unopposed, and urged the Kurdish security forces known as Peshmerga to cooperate in keeping the peace.
In response, the Kurdish Peshmerga troops said Baghdad would be made to pay "a heavy price" for triggering "war on the Kurdistan people"
Peshmerga forces took the control of Kirkuk and surrounding oil fields in 2014 to prevent ISIL from seizing the city.
Kirkuk is a mix of ethnicities, including Arabs, Turkmen and Kurds and is claimed by both the Kurdistan Regional Government and the central government in Baghdad.
The offensive took place a day after the powerful Iranian general, Qassem Suleimani, met with Kurdish officials in Kurdistan. The commander of the Iranian Revolutionary Guards Corps’ overseas operations provides training and weaponry to Iraq’s Shiite militias, which took part in the operation to oust Kurdish forces from Kirkuk.
The development follows Mr Al Abadi's appointment of an Arab politician named Rakan Saeed to replace Mr Karim as the governor of Kirkuk.
The appointment follows Mr Karim’s strong endorsement for the Kurdish independence referendum to be held within Kirkuk.
The development comes as Washington called for calm on both sides, seeking to avert an all-out conflict between Baghdad and the Kurds that would open a whole new front in Iraq's 14-year-old civil war and potentially draw in regional powers such as Turkey and Iran.
Earlier on Monday, Iraqi forces took control of a military airport from Kurdish forces near the south of the city of Kirkuk, where there was a “security vacuum”, according to a local official.
Arshad Al Salhi, a member of the Iraqi parliament and head of the Iraqi Turkmen Front, told The National that the Peshmerga “have withdrawn from the centre of Kirkuk leaving a security vacuum which has enabled armed fighters from the PKK to enter".
The PKK, also known as the Kurdish Workers' Party, is listed as a terrorist organisation by Turkey and the US.
“The outskirts of Kirkuk are under the control of the Iraqi forces," Mr Al Salhi said.
By the evening they had moved into the centre of the city.
A spokesman for Iraq's state-sanctioned militias said they had "achieved all our goals" in retaking areas from Kurdish forces in and around Kirkuk.
Ahmed Al Assadi said federal forces came under fire from "some rebels" after launching the operation early on Monday and returned fire.
The Iraqi forces took several positions south of Kirkuk from Kurdish forces, including the North Gas Company station, a nearby processing plant and the industrial district south of the city.
Their mission was to take back military bases and oil fields, which Kurdish Peshmerga fighters took in 2014 during fighting with ISIL.
Meanwhile, Turkey said it was ready to help the Iraqi government oust Kurdish fighters from Kirkuk.
Ankara, which fears independence moves by the Iraqi Kurdistan Regional Government could spark similar moves by its own Kurdish minority, hailed the Iraqi forces' operation to clean up Kirkuk from the PKK.
"We are ready for any form of cooperation with the Iraqi government in order to end the PKK presence in Iraqi territory," the Turkish foreign ministry said.
The Iraqi government said that "as security forces advanced in Kirkuk, regional party militias from outside of Kirkuk attempted to disrupt the coordinated movements of the Iraqi security forces.”
“In some instances, they fired upon them in an attempt to provoke the armed forces” the statement said. Officials in Erbil should be held responsible for any violence that has occurred, the Baghdad government said.
The US-led coalition against ISIL, which supports both Iraqi government and Peshmerga forces, said it had so far only seen "co-ordinated movements" by military vehicles around Kirkuk and "not attacks".
A limited exchange of fire before dawn was the result of a "misunderstanding and not deliberate as two elements attempted to link up under limited visibility conditions", the US statement said.
"We continue to advocate dialogue between Iraqi and Kurdish authorities. All parties must remain focused on the defeat of our common enemy, ISIL, in Iraq," said Major Gen Robert White, Commanding General of the combined joint forces.
Further south, two people were reportedly killed in artillery exchanges at Tuz Khurmatu, 75 kilometres from Kirkuk, which has been shaken every night since Friday by fighting between the Peshmerga and Hashed Al Shaabi — Shiite paramilitary forces, which are dominated by Iran-backed militias.
The advance on Kirkuk came days after a standoff between Kurdish forces and the Iraqi army and the expiry of a deadline for Kurdish Peshmerga fighters to withdraw from the areas they have controlled since 2014.