Email clients don't display complicated html code:
Many email clients are enabled with minimal html. If you keep advanced html codes like -
* iframes
* forms and buttons
* marquees
* inline style sheets for layout of elements
* embed tags etc. ... they may not be displayed properly.
Simple tags like -
* paragraph
* tables
* break
* font
* bold etc ... will work fine and they are enough for creating effective html emails.
So don't use all html tags you know which also bloats up your html email size.
Javascripts and script executions:
Many email clients simply won't allow the scripts to run in email programs. Hotmail strips away the script code. It will also alerts the user that the message is unsafe to open. Likewise hotmail displays forms, but once your subscribers fills out, nothing will happen. The forms will not be submitted.

Attachments, Images, embedded flash objects:
Many html emails contain fancy images or embedded videos which play once the subscriber opens up the email. All these are good to see on your computer while you are formatting the email. But not on your subscribers computer where the email clients block these attachments, images etc.
Don't hide or block the links from the actual URLs:
Some marketers use links from their site and use different urls as actual links. This would be a big NO-NO.
Example:
<a href="http://some-other-site.com/">http://yoursite.com/product.html</a>
Use redirections instead. So they will go to product.html to see your message that they will be redirected to 'some-other-site.com'. If you try to hide links, email clients mark it as phishing scam and mark your email as junk.