Geneva police battled with protesters on Saturday afternoon.
Around 600 gathered behind the main train station to demonstrate against the right-wing Swiss People’s Party which was holding a top level meeting in Meyrin.
The protest was unauthorized and police ordered them to disperse before using tear gas and rubber bullets to drive the crowd back.
The fire service had to intervene after a shopping cart was set alight.
The police made two arrests.
Organizers said the protest was a success.