There was no immediate claim of responsibility for the attack, but Yemen's Iran-aligned Houthi rebels have previously launched missiles, rockets and drones on the Saudi capital and other cities.
Saudi forces intercepted two missiles over Riyadh late Saturday, state media said, after at least three explosions were heard in the curfew-locked capital amid efforts to curb the coronavirus pandemic.
There was no immediate claim of responsibility for the attack, but Yemen's Iran-aligned Houthi rebels have previously targeted Riyadh and other Saudi cities with missiles, rockets and drones.
It was the first major assault on Saudi Arabia since the Houthis offered last September to halt attacks on the kingdom after devastating twin strikes on Saudi oil installations.
"A ballistic missile was intercepted and destroyed over Riyadh," state-run Al Ekhbariya television reported, citing the Saudi-led military coalition fighting the Yemeni rebels.
It did not say who was responsible.
At least three blasts shook the capital – under a 15-hour coronavirus curfew – just before midnight, according to reporters.
Saudi-owned Al Arabiya television said two missiles were intercepted over Riyadh while a third missile was shot down over southern Jizan province.
The assault comes after all parties in Yemen's long conflict offered support on Thursday for the United Nations' call for a ceasefire to protect civilians from the novel coronavirus pandemic.
Saudi Arabia, the Yemeni government and the rebels all welcomed an appeal from UN Secretary General Antonio Guterres for an "immediate global ceasefire" to help avert disaster for vulnerable people in conflict zones.
The call coincided with the fifth anniversary of powerhouse Saudi Arabia's intervention in Yemen's civil war, which was launched to shore up the internationally recognised government against the Houthi rebels.
Yemen's broken healthcare system has not so far recorded a case of the Covid-19 illness, but aid groups have warned that when it does hit, the impact will be catastrophic.
The country is already regarded as facing the world's worst humanitarian crisis.
Saudi Arabia is also scrambling to limit the spread of the disease at home. The kingdom's health ministry has reported 1,203 coronavirus infections and four deaths from the disease so far.
Fighting has recently escalated again between the Houthis and Riyadh-backed Yemeni troops around the strategic northern districts of Al-Jouf and Mar ib, ending a months-long lull.
The warring sides had earlier shown an interest in de-escalation, with a Saudi official saying in November that Riyadh had an "open channel" with the rebels with the goal of ending the war.
The Houthis also offered to halt all missile and drone attacks on Saudi Arabia after strikes on its oil installations last September, which were claimed by the rebels but widely blamed on Iran, despite its denials.
But those efforts seem to have unravelled. Observers say the rebels may have used the lull to bolster their military capabilities.
Riyadh had expected a quick victory when it led a multi-billion dollar intervention in 2015 to oust Houthi rebels, under a newly assertive foreign policy led by Crown Prince Mohammed bin Salman.
But the costly intervention has failed to uproot the rebels from their northern strongholds, while pushing the Arab world's poorest nation into a humanitarian crisis.