We are looking at developing a small, simple, Access system for a client using SQL Server Express (2005 or 2008) as database. The only complicating factor is they have two offices and they will need to synchronise some (but not all) data between them.
What are my options with the Express edition for doing this? Is there any advantage to using 2008 over 2005?
You could use the Change Tracking feature. It's designed to allow occasionally-connected systems to sync up by only retrieving the data that's changed since the last sync. Checkout my TechNet Magazine article Tracking Changes in SQL Server 2008 for a starter - lots of BOL links. http://www.sqlskills.com/BLOGS/PAUL/post/TechNet-Magazine-Article-on-Tracking-Changes-in-Your-Enterprise-Database.aspx
SQL Server Express 2008 (and SQL Server Express 2005) can only act as replication subscriber. I don't know the details of your application, but you probably could write your own synchronization mechanism.