Thousands had gathered for a religious festival in Bishoftu, 40km (25 miles) from the capital Addis Ababa.
Officials responded after anti-government protesters threw stones and bottles, reports said. There was panic and some people fell into a ditch.
There have been months of deadly clashes in Ethiopia recently.
People in the Oromia and Amhara regions have complained about political and economic marginalisation.
Crowds at Sunday’s Oromo festival chanted “We need freedom” and “We need justice”, witnesses said.
Some participants crossed their wrists above their heads, a gesture that has become a symbol of Oromo protests.
At least 50 people were killed, the opposition said, a number that has not been officially confirmed.
Ethiopia’s government said in a statement that “lives were lost”, adding: “Those responsible will face justice”.
The unrest was sparked last November by a plan to expand the capital into Oromia. This led to fears that farmers from the Oromo ethnic group, the largest in Ethiopia, would be displaced.
The plan was later dropped but protests continued, highlighting issues such as marginalisation and human rights.