Berlin Interior Minister Frank Henkel said the majority of events took place peacefully. But stones and bottles were reportedly thrown at police during a demonstration by the "Revolutionary May 1 Alliance."
Police said they had took the decision to stop the march because there was an aggressive group of protesters at its head from where the missiles were being thrown.
Event organizers used loudspeakers to call on the protesters to join the official "Myfest" community event in the Kreuzberg district of Berlin – a traditional May Day hotspot.
Organizers said that the event, advertised under the slogan "The pressure is growing – for a social revolution," had attracted 25,000 participants, though police estimates put the figure at 10,000. The march was planned to run from the centre of Berlin into Kreuzberg, but it was stopped halfway.
Organizers accused the police of using "unbelievable brutality" to break up the head of the demonstration, and resorted to the use of batons and teargas.
Police spokesman Alexander Tönnies said there were some arrests and some demonstrators were injured, though he did not give any figures.
Police also reported that a bank, a petrol station and an underground train carriage were attacked during the day, and that fireworks had set a residential balcony on fire.
Around 7,000 officers were on duty in the city throughout the day, and Henkel said they showed a "high degree of professionalism" to ensure that violence was kept to a minimum.
Hamburg city authorities also claimed that success in curbing May Day violence, though isolated clashes between anti-capitalist demonstrators and police were reported.
At around 10pm, police used a water cannon on around 200 people throwing fireworks in the Schanzenviertel district of the port city.
Around 1,400 people are reported to have joined a leftist demonstration entitled "Long live May 1, 2012," which marched across the city from the St. Pauli jetties, along the Reeperbahn to the Ottensen district. Police stopped the procession on several occasions as bottles, fireworks and stones were being thrown. Two people were injured, including one officer.
There were also individual clashes with police in Ottensen, and some rubbish bins were set alight. Police said they made a number of arrests, though did not give any figures.