Don't trust just anyone with your email address – beware particularly of websites that offer a free widget or newsletter in exchange for your email address. If you must provide an address, equip yourself with a free email address such as you can obtain through yahoo or msn. That way, you can easily close the address if it attracts junk.
It's impossible to completely avoid spam, so I set up my email browser to delete dubious 'senders' or even entire countries. (I don't have any buddies in China, for example, so I simply blocked all emails that come out of China and other such countries.)
Domains seem to be a dime a dozen or are completely free, so lots of scum abuse free addresses provided by yahoo etcetera. You may not want to block all yahoo- or hotmail- senders, but some of the less popular freebie providers will not be a loss. If you get spam from greedyjerk-at-freetoscum.com, then it's better to block the entire at-freetoscum.com domain rather than just greedyjerk, who will have e-morphed to megascum-at-freetoscum.com by next week.