best is a mix.
This.
I do both in my job and I find that working from home gives me no distractions that you would normally get in the office, like contant phone calls, colleagues bugging you, travelling etc.
However, it's easy to get waylaid at home - too many home comforts and you've got to be disciplined and force yourself to work sometimes rather than play video games and watch TV.
Having said that though, I do tend to get more done at home, and quicker too.