Serbia's President, Tomislav Nikolic, has apologised for all "crimes" committed by Serbs during the break-up of Yugoslavia, including Srebrenica.
But he refused to call the killing of thousands of Bosnian Muslims an act of genocide, as recognised by UN war crimes prosecutors.
Mr Nikolic said he was kneeling down and seeking forgiveness for Srebrenica.
The president is a former senior figure in the ultra-nationalist Serbian Radical Party.
He was criticised after his election last year when he said: "There was no genocide in Srebrenica."
Some 8,000 Bosnian Muslims were killed at Srebrenica in 1995 after Bosnian Serb forces overran the UN-defended safe area there.
It was the worst atrocity in Europe since the end of World War II.
Previous Serbian leaders such as Mr Nikolic's predecessor, Boris Tadic, have accepted that it was genocide.
Under Mr Tadic's leadership, Serbia captured Bosnian Serb war crimes suspects Radovan Karadzic and Gen Ratko Mladic, and handed them over to international prosecutors at The Hague.
Speaking to Bosnian TV, President Nikolic said: "I kneel and ask for forgiveness for Serbia for the crime committed in Srebrenica.
"I apologise for the crimes committed by any individual in the name of our state and our people."
Bosnian Muslim leader Bakir Izetbegovic had recently urged Mr Nikolic to acknowledge Srebrenica as an act of genocide.
"In order to go forward, we need to stop for a moment and look back to... what has happened in Srebrenica," he said after meeting him in the Serbian capital, Belgrade.
"We ask this truth to be recognised and words to be chosen when talking about it... and to respect the decisions of the international courts."
Munira Subasic, president of the Mothers of Srebrenica association, told AFP news agency she was "not convinced" of President Nikolic's sincerity.
"We do not need someone to kneel and ask for forgiveness," she said. "We want to hear the Serbian president and Serbia say the word genocide."
The UN International Criminal Court for the former Yugoslavia and the UN International Court of Justice, both based in The Hague, recognise the crime as genocide.