In general off-site blogs dont give your site hardly any SEO benefit. On-site Blogs are quick and cheap to install and configure for your own website and as such we would really recommend creating a blog on your own website.
WordPress is the in-vogue CMS / Blogging Open source system, its the main one we use and without being blinkered to the others I dont see a reason to look elsewhere as it has so many benefits and almost no downsides.
With reference to the internal vs external argument I believe if you regularly post to a ‘off-site blog’ your site will get almost no benefit from having this external blog, Its very difficult for a standalone blog to get search engine traffic.
The search engines love sites that are current and updated regularly and the blog is a great tool for this, every page you write on an internal blog adds to your website’s size and power and you can now optimise every post via SEO plugins, having an internal blog gives you access to loads of cool and interesting plugins to improve the usability and SEO of your blog.
Another option is to create another domain just for your blog and link that to your main site but this has admin / cost overheads and may not improve the ‘big seo picture’ for most websites.
Our advice would be to always get the Blog (WordPress) installed and configured on your site and then you know that everything you write and every comment you get on that blog will give your website a direct user (website) and SEO benefit.
Additionally a really great SEO tool if your site / company has a big enough following is to have a forum, this is SEO gold if property policed.
Its pretty simple to get the blog installed if you have MySql / PHP available on your server and then the customisation should be done to make the blog look exactly like your site, the last step would be to give your blog a main menu navigation link from your other website pages. For more information click here for details about our onsite blogs