In my (at the time of this posting) short experience developing and designing in SharePoint, I have used both themes and master pages. Each has an advantage over the other, but both also have some pitfalls.
Master pages are good to have to control the overall look and feel of the end-user pages, but falls short when items are being "drilled down" to Contributer access and up pages (the administrative pages). To keep the look and feel consistent using master pages, you will have to modify all of the backend pages to pull from your custom master page.
Themes are good when you want styles (CSS) to control basically everything on the site. Generally, the default.master Master page is used with themes. Themes carry the styles not only to the end-user pages but also to the administrative pages. The drawback of themes is that you are generally at the mercy of the Master page you are tied. Another drawback is that you have to reapply the theme to see any CSS changes!
What about both? Glad you asked. You can build a site with a hybrid of both a custom Master page and a custom Theme. This way, you can tackle about 95% of control over the SharePoint site without having to modify any administrative pages like "Forms/AllItems.aspx", etc. What I did in this situation is made a copy of the default.master to something like custom.master, and pointed all of the sites to it. From there, assign the theme to each of the sites, and also point the "logo" to your custom file. Once you have this setup, you will have a Master page to control structure for your front end, and a theme to help out for the front end and the back end. Unfortunately, you will have to reapply your theme if you make major changes that have to be carried into the back end.
Steps:
- Create and import your custom theme (Heather Solomon has a good article on this: click here)
- Copy the default.master (or create your own .master page)
- Assign the site to your new master page (via Site Settings > Modify All Site Settings then "Master Page")
- Assign your custom logo (via Site Settings > Modify All Site Settings then "Title, Description, and Icon")
- Assign your custom theme (via Site Settings > Modify All Site Settings then "Site Theme")
You should now have a hybrid site that uses your custom master page along with your custom theme. This will work for you so long as you remember the drawbacks of both the master page and the theme.
Have fun.



