You could be very right here, since most of the people I come across working on contracts are already in the market for at least 10 years. In today's market, for someone new starting out, I guess there will be cut-throat competition to get programming contracts, with people ready to work at a very low rate (e.g. on Freelancer, oDesk).
That was the case 10 years ago as well. Most of my contracting friends started out with $15/hour webmonkey work.
The thing you have to understand about contracting (and really any paid work, I've noticed the same effect as a big-company employee) is that people will pay a large premium for a track record of delivering working solutions. When you first start out, your asset is "I know this programming language", your clients just want someone who knows that programming language, and you're competing with all of these people on oDesk and eLance who also know that programming language. After you've delivered successfully on your first couple projects, your asset is "I delivered on these projects and it made my clients $X", your clients want someone with a track record of delivering on projects with minimal handholding, and you're competing only with other people who have had wins of similar magnitude. The supply of these is much lower and the demand is much higher, and so you can charge much higher rates.
It gets easier over time. The first contracts are the hardest to get. Then, if you're any good, you start to get referrals. You just have to make sure every single client is happy. If you go out and network, you will eventually get to a point where you can stop trying so hard, but it's never what I would call "easy". The hardest part is making a living while you're getting started.
I would avoid oDesk type rates at all costs. You're better off going to small business networking groups and making simple brochure sites and wordpress installs for $1000-$2000 a pop.