The temblor, which had its epicentre in southwestern Afghanistan, was felt in Islamabad, Rawalpindi, Peshawar, Lahore and the tribal areas.
In the federal capital, people rushed out of their homes in panic.
At several places, the tremors last over 10 seconds.
The Pakistan Meteorological Office said the quake measured 6.2 on the Richter Scale.
On April 16, an earthquake killed dozens and flattened hundreds of houses in the remote Mashkel area of Balochistan province.
The epicentre of that 7.8-magnitude quake was in southeast Iran but most of the deaths were reported across the border in Balochistan.
There were conflicting reports about the total number of deaths, with civilian and security officials saying between 31 and 40 people had died.
At least 34 dead in Pakistan earthquake
PIX: Major earthquake rocks Iran, Pak; tremors in N India
Kashmir is no more a vote puller in Pakistan
Musharraf's bail cancelled in Bhutto murder case
Blasts in Quetta, Karachi kill 7, 60 injured