Content really is key - good content on your site which is engaging for your visitors but also appeals to the search engines. This is a hard balance but ideally you should have at least 300/400 words of content on each page, the contet should be keyword dense (don't go overboard though) to tell search engine spiders what your page is about. Also consider internal linking within your content (keyword rich links to other parts of the site allows search engines to discover other parts of your site easily)
Keeping with content, dynamic content is important - fresh content shows search engines that your site is updated on a regular basis and encourages them to crawl your site regularly. This is easily done in the form of a blog or news section.
Consider basic on page stuff as well - title tags (try and get a few keywords in here, but no more than 60-100 characters), meta description & keywords, general site structure, navigation (descriptive navigation is good because it aids search engine spiders to follow a structured path). If your website has any images, ensure they have ALT tags as search engines cannot see images so they rely on the alt tags and image names to determine what the images is about.
Make sure you site has an XML site map (you can generate one here
http://www.xml-sitemaps.com/) and a Robots.txt file (
http://www.robotstxt.org/)
In terms of off page
SEO, again content is key - write good, unique articles and distribute them, guest blog, write guest articles for industry websites, etc etc.
Engage in social media, participate in forums (you're already a step ahead with this one :-) ), submit your site to relevant directories. With link building remember backlinks to your site tells search engines that your site is recommended, but it is also important to understand backlinks are about quality and not quantity - finding one site to link from that search engines deem important for a particular keyword is far more beneficial than hundreds of backlinks from spammy, irrelevant sites.
Hope this helps - PM me if you need any help.