Gathered in the town centre on a freezing but sunny afternoon, the protesters turned out following a call by NGOs, anti-fascist organisations, unions and several leftwing political groups.
"If there's unemployment, blame the government, not the migrants," they chanted.
With tensions high in this normally sleepy town of 43,000 people, shops were shuttered early and schools closed for the day, an AFP correspondent said.
"The atmosphere is tense in Italy at the moment and in recent years we have allowed the right to flourish. I have always demonstrated but now we need to do so more than ever," Mafalda Quartu, a retiree from Florence, said.
The town hit the headlines on February 3, when Luca Traini, 28, allegedly carried out a two-hour shooting attack from his car in which he shot at around a dozen African migrants, wounding five men and a woman.
Speaking to investigators, he reportedly said it was in response to the murder of an 18-year-old Italian girl whose dismembered body was found in several suitcases, with police arresting a Nigerian drug dealer in connection with the case.
The shooting shocked Italy, where a general election is due in just three weeks' time in which far-right parties are expected to make a strong showing.
On the campaign trail, immigration has been the dominant issue.
On Thursday, several dozen activists from the extreme-right Forza Nuova held an anti-immigration rally in the town, sparking clashes after they made a fascist salute at police.
Fearing further unrest, Macerata mayor Romano Carancini had called for all demonstrations to be cancelled but the police on Friday gave the green light for Saturday's rally to go ahead.
Giuliano Denti, a 40-year-old gardener had travelled from Pisa with a group of around 100 anti-fascist demonstrators in order to ensure their voices were heard.
"We have a constitution which is, above all, anti-fascist and I want it to be protected and that the laws against fascist ideology be applied," he said.
Gennaba Diop, a 23-year-old woman of Senegalese descent who was born and raised in Macerata, came with a sign reading "my colour is not a crime".
"There is a lot of tension and racism here, people look at you strangely all the time. It's not true that everyone is integrated," she said.
"The other day, people from Forza Nuova told me 'die'. I told them they would not succeed even if they tried."