Serbian Prime Minister Aleksandar Vucic was attacked during an event commemorating the Srebrenica slaughter 20 years.
As Vucic entered the cemetery to lay flowers, thousands booed and whistled.
A group of women from Belgrade, who for years have demanding Serbia to admit its role in the slaughter, yelled "responsibility!" and "genocide!"
He was pelted with with stones, water bottles, a shoe and other objects during the memorial event and was hurried back to his vehicle by bodyguards.
Vucic's associate, Suzana Vasiljevic, told The Associated Press that he was hit in the face with a stone and his glasses were broken. Vasiljevic said she was behind Vucic when "masses broke the fences and turned against us."
Vucic, once an ultra-nationalist, came to represent his country at the commemoration in an apparent gesture of reconciliation.
Tens of thousands came to mark the 20th anniversary of Europe's worst massacre since the Holocaust - the slaughter of 8,000 Muslims from the eastern Bosnian town of Srebrenica at the hands of Bosnian Serbs - with foreign dignitaries urging the international community not to allow such atrocities to happen again and to call the crime genocide.
Serbia and Bosnian Serbs deny the killings were genocide and claim that the death toll has been exaggerated.
According to the BBC, Russia vetoed a UN resolution to label the massacre as genocide earlier this week.
The Bosnian War, which took place between April 1992 and December 1995, was part of the break-up of Yugoslavia.
It saw Bosnian Serbs (backed by Serbia) clash with the Muslim-led Bosnian government.