Skip to content

lang: en

Summary

In 2000, a broad coalition of Serbian citizens, led by the student group Otpor, used nonviolent resistance to overthrow the authoritarian regime of Slobodan Milosevic. The campaign combined mass protests, strikes, and civil disobedience to force Milosevic to accept electoral defeat and resign. The revolution succeeded in installing Vojislav Kostunica as president and paved the way for free parliamentary elections.

Tactics used

Tactics used

Background

Slobodan Milosevic led Serbia through wars and international isolation, with unemployment reaching 50 percent by 1996. Earlier opposition efforts, including the 1996 Zajedno protests, had limited success. In October 1998, student veterans formed Otpor, a nonviolent group aiming to remove Milosevic and achieve free elections, free university, and independent media.

What happened

Otpor held its founding congress in February 2000, adopting a three-phase plan to force early elections, win them, and change the political system [source: nv-database]. They used symbolic actions like the black fist emblem, humorous skits, and distributed T-shirts and stickers to reduce fear [source: nv-database]. The government responded with censorship, arrests, and violence, but Otpor’s support grew [source: nv-database]. In June 2000, Milosevic changed election laws to allow himself another term and moved the election to September 24 [source: nv-database]. Otpor launched the ‘He’s Finished’ and ‘It’s Time’ campaigns to mobilize voters [source: nv-database]. They united 18 opposition parties into the Democratic Opposition of Serbia (DOS), which chose Vojislav Kostunica as candidate [source: nv-database]. At the election, 80 percent voted; Kostunica won 50.24 percent to Milosevic’s 37.15 percent, but the Federal Election Commission called for a run-off [source: nv-database]. On September 27, mass protests began in Belgrade and other cities [source: nv-database]. Coal miners struck, news workers protested bias, and Belgrade’s mayor called for a general strike starting October 2 [source: nv-database]. On October 4, secret police tried to take over mines but faced 20,000 peaceful demonstrators [source: nv-database]. On October 5, protesters from the provinces, led by Mayor Velimir Ilic, entered Belgrade with bulldozers; hundreds of thousands gathered at the federal parliament and media building [source: nv-database]. Police allies stood aside as protesters entered the parliament building; non-allied police fired tear gas and live bullets, wounding four [source: nv-database]. Some protesters burned the media building and rooms in the parliament [source: nv-database]. On October 6, the Constitutional Court certified Kostunica’s victory, and Milosevic resigned that night [source: nv-database]. Kostunica was instated as president on October 7, 2000 [source: nv-database].

Key people & organizations

  • Otpor
  • Democratic Opposition of Serbia
  • Vojislav Kostunica
  • Slobodan Milosevic
  • Srdja Popovic
  • Velimir Ilic
  • National Democratic Institute
  • International Republican Institute
  • Center for Civic Initiatives
  • Serbian Orthodox Church

Outcome

Verdict: won.

The campaign achieved its primary goal of overthrowing Milosevic and led to free parliamentary elections in December 2000. Success came from sustained nonviolent action, broad coalition support, and the regime’s loss of control over police and military. [source: nv-database]

Lessons

  • Symbolic and humorous actions can reduce fear and build public support against a repressive regime.
  • Uniting diverse opposition groups behind a single candidate can maximize electoral impact.
  • Mass strikes and civil disobedience can cripple a regime’s ability to function and force concessions.
  • Training in nonviolent strategy and external support can strengthen a movement’s effectiveness.

Sources


Disclaimer: Included as a teaching example of campaign craft, not as endorsement.

Sources & verification

  • nv-database — grounding: primary — license: link-only
  • Rewritten: 2026-06-25 via worker_casestudies_v2.py