I am in the lucky position to be working at a company that allows me to be working from home every once in a while. Having worked at a fairly traditional company in Japan that would never allow someone in my role to do that, I giddied at the thought. Yay, I can write software without having to wear clothes! Think of the efficiency! That initial giddyness wore off, but working from home definitely has its merits.
One thing I won't point out is the plus that no one will disturb you so you can concentrate on your work. It's offset by an equally large minus, which is that no one will disturb you so you have no idea what's going on in your project and how urgent those tickets that were assigned to you really are. Lack of communication balances with lack of disturbance.
To me the most interesting thing about working from home is the shift in perspective. I still have the exact same amount of work to do as I did had I been working at the office, but somehow I look at things differently. I find myself thinking more in the long term when working from home, and prioritizing work accordingly. I tend to procrastinate a bit more when working from home, but I appear to offset it by doing more creative work and laying the foundations for larger, long-term changes. In the office it's much easier to get caught in the pattern of releasing urgent bugfixes, deploying to different sites, then releasing bugfixes to the urgent bugfixes, deploying again, etc. etc.
In short, working from home allows you to have a completely different perspective on whatever project it is you're doing. Perhaps the reverse could work too: take a home project and work on it in an office. I wonder how that would turn out.