Greeting,
Two foreigners can marry in Serbia regardless of their country of origin or visa regime.
Whether that marriage will be recognized in the country of origin depends on the law of the country of origin, so I can't help there.
The procedure is straightforward: schedule an appointment with the city administration's registrar, pay the fee, and show the evidence listed on the following page (city of Belgrade website):
-
It is critical to ensure that all documents used as evidence are properly translated into Serbian and have an apostille.
I don't know any wedding agencies in Serbia, so I can't recommend one, but you might be able to find them on the internet using a translator.