I've worked remotely as a consultant doing full-stack web app development for over 3 years. Before that and after graduating I had a nice full-time office job for about 1 year.
The decision to replace a stable job with an uncertain entrepreneurial environment required a huge mental change from me (something that's due to local culture aspects), but the opportunity to simply work on what I like doing became irresistible at some point.
As far as the pros and cons of working remotely are concerned, I think the biggest advantage is that the projects I work on now are infinitely more interesting that any local job I could find. I like to learn and every new project brings new challenges.
I also like to travel and business trips have been a great opportunity to visit many places in Europe and US.
The downside is that if you are a consultant/freelancer targeting foreign market you have to be prepared for idle time in you business. The fact that you have several offers now doesn't mean you will have any 3 months later. It's good to have a contingency plan.
Also, if you are self-employed you have to deal with bureaucracy and accountants. For many companies it's just easier to work with people that issue invoices rather than going through a process of hiring foreigners. The overhead depends on the country you are living in and sometimes can be a real distraction. Outsource as much of that as you can.
Another thing that is a bit frustrating is that many companies back out when they hear I'm interested in working remotely, even though they are unable to find engineers on the local market and I can provide them with comparable if not better service. I've made the mental change, now it's time for you. My only tip is: hire managers of one [1].
[1] http://37signals.com/svn/posts/1430-hire-managers-of-one