Opposition deputies boycotted the vote to dissolve parliament
Macedonian legislators have voted to dissolve parliament and hold early elections on 1 June amid a row with Greece over the country's name.
Greece wants the former Yugoslav republic to change its name, saying it implies a territorial claim over its northern province of the same name.
Greece blocked Macedonia's bid to join Nato a week ago over the name issue.
Macedonian Prime Minister Nikola Gruevski said opposition parties had been blocking his plans for reform.
"We remain committed to our goals to join Nato and the European Union," Mr Gruevski said.
"But the necessary reforms are halted with a blockade of parliamentary procedures."
Fears of unrest
Seventy of Macedonia's 120 deputies voted to dissolve the parliament, with 50 opposition members boycotting the vote.
The opposition Social Democrats said early elections could further harm Macedonia's bid to join Nato.
Elections had not been scheduled until 2010, so the June poll comes two years earlier than planned.
Nato's veto has inflamed nationalist feelings in Macedonia
Macedonia's multi-ethnic government has been in deadlock for months over reforms and rights for the country's 25% ethnic Albanian minority.
Some analysts say Mr Gruevski is hoping to secure a stronger mandate for his conservative VMRO-DPMNE party amid an upsurge of anti-Greek sentiment.
Others fear increased Albanian unrest. In 2001, Nato and the EU managed to prevent a civil war in Macedonia between security forces and ethnic Albanians separatists by brokering a peace deal which granted more minority rights.
Macedonia's official name is the Republic of Macedonia, and Skopje wants to use this in international relations, but Athens wants the country to change its name to New or Upper Macedonia.
Athens could use its veto again later this year to scupper Skopje's bid to start EU membership talks.
There will be fewer incentives for the government to create a multi-ethnic society without the carrot of Nato and European Union membership, says the BBC's European affairs correspondent Oana Lungescu.