There are very few instances where you want to work for someone without a freelance contract. You should have a standard one that you modify for different jobs. You should also understand what to expect in contracts offered to you by employers. A simple search in Google or Yahoo! using the search term "free freelance contract" should lead you to contracts that you can adapt and use. Make sure they include these provisions:
The freelance contract should spell out exactly what you're being hired to do. Those services may be listed in an attachment, instead of in the body of the contract. For example, the "Services" clause may include this language: "Contractor agrees to provide X with certain services (the 'Services') as set forth in Attachment A." Companies prefer this, instead of changing the contract for each and every freelancer they work with. The attachments are a part of the contract, and are enforceable. The only caution is that if something in the attachment conflicts with the contract, the attachment or portions of the attachment may become void and unenforceable. Compare what's on the attachment with what's in the contract to make sure they don't conflict.
A freelance contract cannot hold up in court if it's missing a term. There has to be a "meeting of the minds" as to when the contract begins and ends. That's the legal way of saying both parties should understand and agree to the term of the contract. If the term isn't included, there's no meeting of the mind.
You won't work on a freelance gig forever, although too many contracts have that as a term. Avoid "perpetuity" clauses, which means the contract can go on and on. There's nothing wrong with that legally, because the contract often includes "outs" for both parties. However, it's not a wise business move. It's better to have a definite termination date, with options for both parties to renew the contract with proper notice. That way, you're not tempted to terminate the contract in a way that will burn a bridge with that employer or ruin your reputation. Three to six months is a good range to work for in freelance contracts, with renewal provisions.
Be as clear as possible in any freelance contract the ways in which it can be terminated. Can both parties terminate the contract at any time after giving notice? How much notice is required? If you're working with a large company, you may have little choice in terms of what you can negotiate for a termination clause. The best type of termination clause in that scenario is one in which both parties would need to show cause for why the contract should be terminated. For example, one party needs to violate the contract, be given the opportunity to fix the violation, before the other party is allowed to walk away or sue for damages. The best termination clause for smaller freelance contract relationships is one in which both parties can terminate for whatever reason, as long as they give a 30 day notice.
Make sure the freelance contract specifically states that you're working as an independent contractor, and not as an employee. Otherwise, both parties may run into serious problems with the Internal Revenue Service.