The key to finding clients is understanding your best target market, and then going where they are most likely to find you.
When I first started freelance programming, I really struggled with this. I was so anxious to just find ANY clients that I didn't consider who I really wanted to work with. But that won't help you, because different customers will find development resources different ways, and randomly throwing crap on the wall to see what sticks isn't very effective.
So instead: think about all your experience, and consider what kind of clients you really want to work with. For example:
- Large or small companies?
- Established or startups?
- Do they understand development, or are you their "expert"?
- What does the team you will work on look like? Are you a worker-bee on a large team? Are you the leader of the large team? Are you on your own working directly with the business person?
- Do you work at their site or someplace else?
- Specific industry?
- Specific technology?
- Local only?
Don't limit yourself to these questions - try to narrow it as much as possible, and come up with your list of best client attributes.
Now you have a description of your "best client". The next step is to figure out: where are they and how do they hire for services like the one you provide? For example, I work only with small, local companies (under 50 employees). I work directly with the owner, because they control the money. The owners I work with have previous experience in technology - most are former developers which means I don't have to educate them on how development works.
How do they find developers? My clients found me via word of mouth referrals and via Google searches. I've paid for occasional Google Adwords campaigns, and I've let all my contacts know when I'm looking for new clients.
Other clients may look for developers differently. For example: Larger companies may work through their HR department, and may have preferred vendors you can subcontract through.
If you intend to find business via sites like oDesk you will find plenty of price pressure. I don't use those services, so I can't say if the pressure is too much. But I will say that you can always respond to price pressure by providing better service and local access to clients. And honestly, you don't want clients who will select you based solely on price anyway. They are never worth it in the end.