A quake with a magnitude of 4.4 was recorded 39km (24 miles) northeast of Milan, according to the European-Mediterranean Seismological Centre (EMSC). The earthquake centred on Bonate Sotto, a small town outside the city of Bergamo, and struck at 11.34am local time (10.34am GMT).
It reached a depth of 27km (17 miles) and tremors were felt across Pavia, Como and Milan.
Panic was sparked across the second largest city in Italy, whose region has a population of around eight million people.
Local reporters and residents recalled the ground and even houses shaking.
Corriere della Sera reporter Martina Pennisi said: “Earthquake in Milan. Could be felt well on the ground floor too.”
Another, @lulevader, said: “Earthquake near Milan – buildings shake!”
A third, @Roveees1, added: “Talk about the unexpected. A 4.9 magnitude earthquake just struck the Milan area.
“The ferocity of the tremors that shook our building was quite the Saturday wake-up call.
“What a reminder of the potential wrath of Mother Nature.”
The Milan fire department said there were no immediate reports of damage or casualties in the city.
Italy can be prone to earthquakes as it is located close to the Adriatic plate.
The microplate is situated in the deformation zone at the boundary between the Eurasian and the African plates.
The most destructive earthquake to strike Italy was recorded in the Straits of Messina in 1908.
The quake measured 7.5 on the Richter Scale and triggered tsunami waves in excess of 40-foot.
It is estimated more than 100,000 people were killed by the quake and subsequent floods.