Personally, I find word of mouth to be the most effective.
Though I would vote on SEO first, because organic search results tend to be more effective, and if you know how to do it yourself, you're avoiding cost all together
__________________ DILIGENThost.com, Canadian hosting based on high-availability w/ 24/7 support cPanel/WHM 11 + Fantastico, PHP4&5, Private nameservers, Unlimited domains, Self Serve DNS...Shared / Reseller / SHOUTcast / Other / 30-day money back | Webmasters-Inside.com - Come join our new webmaster forum!
SEO is definitely better. Though difficult to achive this is one aspcect which should be considered seriously. Over time if your website is coming up on organic search results, you are not incurring anything on advertising or SEM.
SEO is important, of course, and can keep the traffic coming even when you are not doing any other promoting. There's nothing better than word of mouth, too so some sort of incentive to refer friends is good. Not necessarily an affiliate program though - people see that as the person just trying to make a buck. I think it would be more effective if you gave them a discount or extra features instead.
Both combination of SEO and SEM will be great for your site traffic.
You need SEO to improve your search engine and also site page rank. Moreover, you also need to market and advertise your business with SEM.
They will help you grow and succeed
__________________
Best Regards,
Gabrielle Capstick, Host Department LLC
Providing Reseller and Web Hosting to Millions Worldwide
We Come to Host and to Serve