SEO (Search Engine Optimization) is the idea of improving your site so that it works better with the search engines and in turn helps to generate more traffic from the search engines. This term is separate from SEM (Search Engine Marketing) which deals more with online advertising.
Search engines use keywords to determine what content is on your site. Be very careful and specific when choosing keywords. Usually 6 to 10 keywords is ideal, and should consist of key phrases, rather than single words. A good way to select effective keywords is to think of what people would type into the search engines to find their information. It is possible to get blacklisted from the search engine (DON'T DO IT) if you try to overload you site with non-sensible keywords (adding keywords in areas where that don't belong trying to trick the search engines).
You should Always use specific key phrases for each page of your site. Those key phrases together should describe the specific page of your site not just your site in general. For instance, let's say you had a site that sold Schwinn bicycles in Edwardsville Illinois. I would maybe have the following 'general' key phrases for all my site pages: Edwardsville Illinois Schwinn bicycles, Schwinn bicycles in Edwardsville Illinois, Schwinn bicycles for sale, Buying a Schwinn in Edwardsville. Let's say I had a page on my site that discussed the history of Schwinn bicycles I might add the key phrase 'Schwinn History' for that particular page in addition to my general key phrases. This will distinguish that page from the rest of my other site pages. Be sure to incorporate those key phrases into your page content.
These key words and phrases should be added to the <meta description="key> tag within your HTML code.
<meta name="keywords" content="key phrase here,another key phrase here" />
It is important to use the same concept of specific key phrases when titling each of your web pages. Be specific and try to use some the keywords that have been chosen for your site, or more importantly for that specific page. This is one of the most important SEO practices. The title is found within the <title> tags in your HTML code.
<title>Web Site Title Goes Here</title>
In addition, write a brief summary of the web page with those keywords/phrases in mind. This content would be added to the <meta> tag in your HTML code.
<meta name="Description" content="description of your site goes here">
Search engines cannot "see" images on your site so it is important that all your images have 'alternate' text to describe them. The textual name assigned to the image is seen by the search engines, and can essentially act as another keyword/phrase. The alternate text should go in the <img> tag within your HTML code.
<img alt="alternate text for your images goes here" src="url of your image goes here" />
Headings and subheadings are important for two reasons. First, it improves the appearance of the web page and makes the page easier to read by organizing the information into small, logical blocks of information. Second, subheadings help search engine spiders further understand web page content and recognize the most important information on the page. Effective use of subheadings can greatly improve the searchability of a web page.
For more on writing for the web and understanding how users read online, check out 'Writing for the Web'.