The three-party Zajedno (Together) coalition forced President Slobodan Milosevic's Socialists to recognise its gains in local elections held in November with daily street protests, which involved half a million people at their height.
Zajedno called off the protests when the Socialists finally agreed to recognise its election victories but leaders say two key goals remain to be met.
They want Mr Milosevic's government to liberalise the country's heavily controlled media and create fair conditions for parliamentary and presidential elections due later this year.
The coalition now has the majority in Belgrade, with 69 seats out of 110 on the council, though Socialists still control both the Serbian and Yugoslav governments. The opposition faces a struggle in Belgrade, inheriting power in a city that has little money to pay for badly needed reforms.
Before the vote Mr Djindjic told the assembly the two main objectives of the new city government would be to modernise the administration and make it publicly accountable.
"We shall try in principle and in the long term to resolve the problem of Belgrade. We are aware we will not have the support of other bodies in Serbia, but we will have the support of citizens with whose help we were brought here."
The Radical Party leader, Vojislav Seselj, and other members of his party opposed Mr Djindjic's election as mayor because of convictions for petty theft of a book. They also said students of Belgrade University, who are still demonstrating daily for the removal of their rector, were under Mr Djindjic's control.
Later yesterday the coalition was due to remove a five-pointed Communist star from the Belgrade city hall and a rally was planned to celebrate the victory.
But one of Zajedno's co-leaders, Vuk Draskovic, demanded the coalition radically change its programme before he agreed to attend. "Pledges, fireworks, trumpets and drums, spectacle and strong words stand in stark contrast ... to the grim reality of Belgrade and the whole of Serbia," his Serbian Renewal Movement said.Reuse content