I frequently create marketing emails, so I can give a few more tips:
Keep the design simple, trust me, it'll make your life easier later down the road
Use tables (ugh, I know) and inline CSS
Don't bother with things like p, h1, h2, etc tags in the table. It'll just complicate your life more and adds no value to the code
Don't bother with paddings / margins. You should use spacer images instead (again, ugh)
For hotmail & images you'll notice there are probably some spacing issues (extra padding above and below the image). You can easily fix it by doing the following on all images:
Before...
<td><img src="http://mysite.com/images/logo.jpg" width="100" height="50" alt=""></td>
After...
<td style="line-height:0;"><img src="http://mysite.com/images/logo.jpg" width="100" height="50" alt="" style="display:block;"></td>
Be sure to place height/width attributes on images
Do not place height/width attributes on td/tr/tables.. Use inline css height/width.
http://premailer.dialect.ca/ is an AMAZING tool. Use it!
I can't believe I'm actually referring someone here, but: http://litmus.com is a good tool to use to preview across different email clients. It's a bit pricey if you're a solo developer ($50/month), and to be honest the service isn't terribly reliable - it provides the proper screenshots, but the access to the different email clients is very unstable IMO.
If you have any specific questions, or need more tips for certain clients let me know!