You have to find the middle ground between only doing stuff you are absolutely sure you can deliver excellently because you've already done that kind of work before (which for all of us is always going to be small) vs taking stupid wild risks with technologies and areas you are not familiar with.
Also, there will always be risk that you will deliver a crappy product because your client did something that made it that way (eg "but we MUST have .Net ASP on the front end talking to a PHP back-end and ONLY using flatfiles") - that's a constant regardless of your degree of familiarity with a given technology or problem space (you can mitigate that in other ways but that's beyond scope here I think).
Take stock of what it is that you are comfortable working on:
* Technologies you have clearly demonstrable capabilities
* Problem spaces you have worked in before
* Areas you have researched
Now extrapolate by one degree - eg so if you are familiar working with Hadoop you probably could set up and use Cassandra if you needed to. But to say you have experience setting up a massively scaled and redundant data warehousing operation would be too far.
If you have built mainly consumer focused apps you might feel comfortable trying a social network app, but jumping into financial software might be too far.
etc.
Now with the above market clearly the technologies and spaces you have experience in and don't be afraid to take on jobs that exist in the "1 degree apart" space - but be cautious of anything that falls outside of that.
Sorry if this is a long windy reply - I've spent the last 5 years consulting and the above is my basic methodology for this.