Header

At the top of virtually all HTML documents is an area known as the document header. This header begins with a <HEAD> tag and ends with a </HEAD> tag. It's purpose is to define the global, overall characteristics of the document, including the format (style definitions), scripts, and information for search engines and spiders.

This area is the subject of some controversy among webmasters. On one hand, some webmasters believe the less you put in the header the better. After all, the idea is to provide content and information to visitors, not to research and add obscure, special purpose tags.

On the other hand, the information and tags contained within the header can be very useful. 

I've included some general recommendations below. 

<TITLE>
All HTML documents should include a title. This displays in the top of the browser window, and it is often used by search engines in the results pages. Short and descriptive is best, something that is understood by human beings, not search engines or robots. A couple of keywords for the engines can be very useful, however.
Meta Description
The <META NAME="description"> tag is very useful as it is used by many search engines for their display. This is not used for ranking much by any of the major engines, although it is used by some of the minor ones. Remember this tag is for humans, not robots.
Meta Keywords
A few years ago, you would spend ages fine tuning your <META NAME="keywords"> tag. The search engines all used the keywords you included to rank your page. These days, none of the major engines pay much attention. The minor engines, however, do use the tags on occasion. Just include a few keywords which properly describe the page.
Meta Author
I like to include the <META NAME="author"> tag, just in case it is used by some directories and search engines.
Meta Copyright
The <META NAME="copyright"> tag will not help your search engine rankings a bit. However, it might (perhaps) be useful if you had to bring someone to court for stealing your pages.
Meta Pics-label
The H<META http-equiv="pics-label"> tag is useful to declare to filtering software the ratings (for sex, violence and language) of your pages. I like to include two of these tags: SafeSurf and RASC.
Meta Content-Type
I believe using the <META http-equiv="content-type"> is simply good practice. This tag declares the character set of the HTML document, thus allowing the language to be rendered properly.
Meta Content-Language
I always include the <META http-equiv="content-language"> tag simply to make it clear that my pages are in English. Useful to some search engines so they can limit searches by dialect.
JavaScript
Oftentimes, JavaScript routines are defined in the header area. It is usually best to include these as external references so they can be used by multiple documents.
Stylesheets
Cascading Style Sheets are, of course, defined in the header area. External style sheets are usually best, as they can be shared and mass changes can be easily made.
Prevent Smart Tags
Don't like the idea of Smart Tags? If not, include the <META name=
"MSSmartTagsPreventParsing">
tag. This disables smart tags (if and when Microsoft implements them across the web).
P3P
If you use P3P (a new privacy standard), then be sure to include the P3P tag. And example is <link rel="P3Pv1" href="/w3c/p3p.xml">.
 

Some tags to avoid include:

<META name="generator">
Simply not needed, useful only to be able to gather statistics on how many people are using what web creation tools.