The issue of having your site indexed and rank well within the search engines has always been one of confusion for most people. Obviously, web sites that rank well within Google, Yahoo and Bing do so for a reason. Specifically, reasons which correlate to good search engine positioning are as follows:
A large amount of quality websites linking to yours
In a nutshell, it's very beneficial to have a large number of websites linking to yours. So how do you get these other web sites to link to yours? This is the same struggle that everyone faces. Keep in mind though that the more inbound links you can obtain, the better. Site with more inbound links are seen as more impotant than sites who have few inbound links when it comes to the search engines.
Quality site content
Content is King. Websites that have rich, well written content will be welcomed by the search engines. A lot of websites are simply link farms to other websites and lack content themselves. Having rich content in the body of your webpages is very important and makes for a much more relevant search match than meta tags, as was in the earlier days of the web.
Dynamic, changing content
Make sure that you are publishing content to your website on a regular basis. Having static, out-dated content is a good way to get lost in the crowd. Keep upto date on current trends in your industy and/or profession and publish content discussing it.