Custom CMS website

Check CouchCMS too http://www.couchcms.com/

About WordPress Theme Development, you will need a PHP experience and experience with WordPress - Understanding how it works, hooks, actions, APIs etc.

All is pretty well documented on WordPress Codex, and there are bunch of additional tutorials.