They are asking President Dilma Rousseff to veto the bill, which has been approved by Brazil's Congress.
The bill proposes sharing oil revenues more evenly between oil-producing states like Rio and other states.
Local politicians are fiercely opposed to the move, saying it could cost the state $1.7bn (Â£1.06bn) next year.
They say that the changes would affect Rio's ability to host the 2014 football World Cup and the 2016 Olympics.
The bill would lower the level of royalties collected by oil-producing states from 26% to 20%.
The BBC's Julia Carneiro reports from Rio that state authorities released employees from work and invited musicians and celebrities in order to entice people to attend the demonstration.
The protest ended up looking more like a big street party, with people dancing and drinking, she says.
Police said about 200,000 people took part.
"We cannot redistribute the royalties with other states," Isabel Johnson, a 24-year-old nurse, told the AFP news agency.
"It is our heritage and our chance to climb on the international stage," she said.
Brazil is expected to be able to produce tens of billions of barrels of crude oil over the coming decades from discoveries of offshore deposits of oil made in recent years.
Ms Rousseff has until Friday to approve or reject the bill.
State governor Sergio Cabral and Rio's mayor Eduardo Paes were among those on the march.
In recent days, state officials have put up banners around the city addressed to Ms Rousseff, bearing the words "Veto, Dilma".
Many of the protesters had been bussed in from other parts of the state.
Some 200,000 people have protested in the Brazilian city of Rio de Janeiro against a bill they say will deprive Rio state of much of its oil revenue.