Supporters of the nationalist Alternative for Germany party have marched through central Berlin to protest against Chancellor Angela Merkel’s government.
A heavy police presence kept the marchers away from a number of counter-demonstrations in the capital.
Police said several thousand people turned out for the demonstration organised by Alternative for Germany, known by its German acronym AfD.
A variety of counter-demonstrations attracted several thousand participants each, police said.
The AfD event opened with German flags, placards such as “No Islam in Germany” and chants of “Merkel must go” at Berlin’s central train station.
The party’s supporters marched from the rally toward the landmark Brandenburg Gate.
Some of the counter-protesters took to rafts on the Spree river, within sight of the train station.
Groups organising protests against AfD included artists and a coalition of Berlin music clubs hoping to “blow away” the party with loud techno beats.
About 2,000 police officers were in place to prevent trouble, including reinforcements from other parts of Germany.
AfD won 12.6% of the vote to enter Germany’s national parliament last year on anti-migrant and anti-establishment sentiment.
It is now the largest of four opposition parties after the country’s two biggest parties finally agreed to continue a centrist “grand coalition” under Ms Merkel earlier this year.
The march, an unusual move for a German political party, was headlined “Germany’s Future”.
An AfD regional leader, Andreas Kalbitz, proclaimed that “this is a signal” and argued that it shows “AfD is the centre of society”.