In the darkness, at least a hundred officers in riot gear waited in front of the statue of Robert E Lee in Charlottesville, Virginia. They stood very still, and it was hard to see them, except when the light caught their reflective vests, or glinted off the edge of a raised plastic face shield.

The statue of the Confederate general was heavily fortified: metal barricades, lines of officers, more officers waiting down the street.

On Saturday night, hundreds of protesters marched from the University of Virginia towards the Lee statue. “What goes up, must come down, tear those fucking statues down,” the crowd chanted.

Exactly one year before, white supremacists and neo-Nazis had marched through Charlottesville with torches, chanting “Jews will not replace us”. They claimed they had come to the city to defend the Lee statue. Charlottesville officials, led by a black city council member, had voted earlier that year to remove the statue, calling it an offensive symbol of white supremacy.

A year after these political battles sparked deadly violence, and a car attack that left one counterprotester dead and nearly two dozen injured, a lawsuit still bars the city from removing the statue from the park.

A demonstrator at UVA asks riot police to leave on the University of Virginia campus during protests in Charlottesville, Virginia, on Saturday. Photograph: Evelyn Hockstein for the Guardian

But the main subject of the protesters’ chants as they marched on Saturday was not the Lee statue, or its neo-Nazi defenders, who had chosen not to return to Charlottesville for the anniversary of their march. Their anger was focused on the law enforcement officers who ringed the Confederate general and were stationed across the town.

Last year, city and state police had stood by as white supremacists attacked counterprotesters, leading to spiraling violence in the streets. The rallies last year brought multiple white supremacist groups together, and they had been violent: assaults on counterprotesters, a vicious beating of a young black man in a parking garage, a Ku Klux Klan member who fired a gun at another black man.

The anger over officers’ inaction simmered throughout Saturday’s protest, which had been planned by students as a rally at the university, and turned into a winding, nearly three-hour march into downtown Charlottesville.

I’ve counted at least 100 officers here, in riot gear, guarding the statue of Robert E. Lee in Charlottesville tonight. They’re very still. You can just barely see the light glint on their helmets. pic.twitter.com/v71OxPE7RR — Lois Beckett (@loisbeckett) August 12, 2018

“Cops and Klan go hand-in-hand,” the protesters chanted Saturday, as they marched across the university campus and through the streets. And later: “How do you spell Nazi? C-O-P!”

It was striking how little of the protest focused on the white supremacist groups that had come to town last year. These groups were absent this year, with many of them weakened by infighting, lawsuits, counterprotests, and external pressure; and by the violence or failure of their own leaders.

A police car is reflected in the window of a movie theatre displaying a poster for the movie BlacKkKlansman. Photograph: Evelyn Hockstein for the Guardian

Instead, the activists focused on the failures of their own leaders. Student organizers criticized the University of Virginia for not doing enough to confront white supremacists. They called out city officials. But policing was the central theme: police brutality, police racism, and what the activists said was a long track record of the police protecting white supremacist protests, and then turning on counterprotesters.

UVA student activists had unfurled a banner at the beginning of Saturday’s evening rally, comparing the police to white supremacist groups: “Last year they came with torches. This year they come with badges.”

It was met with cheers from the crowd.

The law enforcement failures during last year’s rallies have been extensively documented. An independent review of the official response to the Charlottesville protests concluded that law enforcement had “failed to maintain order and protect citizens from harm, injury and death”.

These were top-down failures, of strategy, coordination and command.

The “relative passivity of law enforcement” in response to the white supremacist torch march at the University of Virginia’s campus on 11 August set an “ominous tone” for the following day, the review found.

The review, based on extensive interviews and documentation, found “deep distrust of government within this community” as a result of the official response to last year’s protests.

The memorial for Heather Heyer on the street where she was struck and killed last year, in downtown Charlottesville. Photograph: Evelyn Hockstein for the Guardian

A year after those failures, the city had prepared for the anniversary by stationing more than 1,000 law enforcement officials across a barricaded and locked-down city, frustrating many city residents with what seemed like an overreaction.

On Wednesday, the University of Virginia also announced extensive security measures, including setting up metal detectors, screenings, and a security perimeter for a rally University of Virginia student activists had planned to commemorate the anniversary of the torch rally.

In response, the student activists who planned the rally by the Thomas Jefferson statue in front of the university Rotunda, where some of them had confronted white nationalists a year ago, chose instead to lead more than 700 people on a march around campus. Some members of that crowd continued marching later into downtown Charlottesville.

“We didn’t want them to put our folks into cages,” Clara Carlson, 22, a student organizer and recent University of Virginia graduate, said.

There was an early moment of escalating tension when more than 150 officers in riot gear started lining up to the side the crowd of protesters listening to an activist speak. Many people at the protest rushed to confront them: “Why are you in riot gear? We don’t see no riot here!” a rapidly forming crowd chanted. “They’re just talking! They’re just talking!” someone screamed.

A line of clergy and older residents linked arms and stood between the police and the rest of the protesters. The two groups separated. Organizers encouraged the protesters to return their focus to the student rally.

“You’re sending the police in riot gear for a peaceful protest? That’s unacceptable,” Carlson, one of the student organizers, said later.

Counterprotestors including anti-fascists marching. Photograph: Evelyn Hockstein for the Guardian

Charlottesville’s police chief, Rashall Brackney, did not respond to a request for comment late Saturday night on the anti-police rhetoric of the protest.

While the march continued to be followed by law enforcement for the next three hours, there were signs of de-escalation. Officers at later stops along the march did not wear riot gear, and assembled in smaller numbers. There was at least one scuffle along the march route. But the march was predominantly peaceful.

One woman walking her dog said she was frustrated by the march in the middle of her neighborhood. But other residents greeted the marchers with clapping and gratitude.

“Thank y’all so much! We appreciate y’all so much!” Aretha Brown, 58, called to the anti-fascist marchers as they passed a convenience store.

“It’s wonderful! It’s beautiful!” city resident Cathy Westbrook, 62, said as she waited with her family outside a local restaurant. She said she was glad to see a clear public response to the anniversary of last year’s rallies.