I've worked with them all. Russians are good but I've had quite a few friends who have been fucked over by them.
Personally, we work with a few teams in South America. Specifically Argentina. They are on the same time zone as us, work 35-50 hours a week, speak English, and are incredible coders. They cost about $5-$15 an hour, but a $15 an hour guy is the equivalent to a $70 programmer here in the U.S..
If you're going to be doing a lot of outsourcing, grab an American manager. There are a ton down there. Ours is from Arizona (born, raised, and graduated there) and he is our full time guy making sure shit is right and gets done.
In conclusion, skip elance. You might find a few gems, but you'll learn that you lose more money in time looking for them then just paying the extra damn $5 an hour.
-Jim