A flight to Brazil is still not as cheap as it ought to be but has been dropping in recent years.
This is primarily due to Brazil becoming a quite popular long haul destination with increasing numbers of Americans, Canadians and Europeans not only shooting down to Rio for a bit of Samba, but taking in other regions of Brazil too.
From the U.S. you can fly direct to Brazil from; Miami, NY, Atlanta, Houston, Dallas, Wash DC, LA and Chicago. If you want to make a note, by-and-large, Miami is the cheapest U.S. Airport to fly from, no doubt due to the sizable Brazilian immigrant population there.
Canadians can only fly directly from Toronto; however, its sometimes cheaper to fly to a city in the U.S for your Brazil connection. Of course Europeans have long had a tradition of flying to Brazil, not least because of the Portuguese connection.
Europeans can take a direct flight to Brazil from any of the following cities; London, Milan, Madrid, Helsinki, Istanbul, Munich, Frankfurt, Amsterdam, Paris, Munich and Lisbon. Most flights leave Lisbon, and it is very often cheaper to get a connecting flight from there than say fly direct from London or Paris.
For both sides of the pond there are an increasing number of charter flights to Brazil and its sure worth checking these out before booking a regular schedule. As bums on seats is the order of the day, and you can often get a bargain (I once had a London to Salvador for 450 USD, 300 GBP, 340 EURO).
There are even cheaper ways to get a flight to Brazil, but more on that in a moment. My final piece of advice about getting a flight to Brazil is to consider flying to regions other than Rio or Sao Paulo, Rio especially as she is quite accustomed to receiving foreigners and you can experience the real, hidden cultural gems of Brazil in other regions. Here are some suggestions for you; Salvador, Recife, Natal, Belo Horizonte and Manaus.