Is it possible to build a "free" server (SQL Server Express + Sharepoint Foundation) when the number of concurrent users will be about 20 with the total number of about 100. Both SQL Server and Sharepoint will be running on the same Windows Server 2008 (not sure which edition yet). Will this work? Or I need to consider paid versions?
Users will definitely not be an issie so you probably only need to be concerned with content volume. With SharePoint Foundation and SQL 2008 Express you have a 10GB limit but can implement RBS FILESTREAM OR 3rd party RBS provider to increase the amount of content you can manage in the environment...probably upwards of 75-100GB.
This should work. As Rob says, it is only going to be a problem if you put in huge amounts of content (unlikely given the number of users).
However, I wouldn't recommend using RBS (FILESTREAM) to get around the storage limit on SQL Express, other than to get around a particular 2007 upgrade scenario. I just don't think it is worth the trouble and complexity compared to the cost of a SQL Server licence, in my opinion. Can't see it being an issue though with that number of users - you have 10 Gb to play with.