A lot of the solution is gonna be your skill & knowledge level (or whoever has to implement) and the budget.
A VPN would certainly work well, given the information you've provided.
One office should be up on (probably) a T1, and contain resources common to all offices (like a central database, Email, Intra-net web page, etc), any office that's putting out as much as it's taking in should have some kind of symmetrical Internet connection (ISDN, DSL, Frac T1 or T1).
There are hardware solutions you can implement that are a little more expensive, perhaps a bit more secure, and tend to not slow the connection down as much as pure software solutions (encryption is very processor-intensive, but there are NICs that have hardware IPSEC encrypt/decrypt).
Depending on your routers, you may be able to upgrade your code and implement VPN from router-to-router (and add access from home via VPN).
Microsoft has some VPN capability, but, it's Microsoft, what can I say? Probably good for SOHO stuff, but do you want to bet your business on those honyoks??
IMHO, the bottom line is that your best bet would be to contact a good integrator or consultant, have them look over your ENTIRE network, and make a couple recommendations that cover the budgetary scope. There's no substitute for eyeballing the network when it comes to important business issues relating to the network. Keep in mind that anyone that says "Just do this...." without seeing the network doesn't have to live with the outcome...you and your company do.
Having an external source come in for a look may look expensive at first, but if something goes FUBAR, it'll cost you lots more in the long run.
FWIW
Scott
There's lots of smart folk on the board, but throwing darts bases on (possibly) incomplete information is dangerous and fraught with potential disasters