So on our little project I have decided that because our fatclient will connect to the server via webservices, so should our webapp. Sure, sure its on the same server (now) but using SOA here helps in several ways.

1)  If we grow to a multie server enviroment it will be easy as pie to cut the webapp away from the business layer (as it will already be using the webservices

2) I only have to write my webservices once, and I don't have to write a bunch of wrapper classes just so the webapp can call right back to the BAL while the fatclient has to go thru webservices.

3) I can make the webapp 100% HTML. Now you may be asking, but then its just a webpage. True, but with AJAX I have actually been quite successful writing 100% javascript HTML clients to my webapps. The idea being that static file serving is light, easy, cheap (doesn't require IIS or windows for that matter), and finally it completely decouples business logic from the UI allowing solid design practices.

4) We can publish a Webservice API for client websites to use as they like.

So with all that being said, as of yesterday I completed all of the webclient Services for searching and rendering. Now I have a few new entry points (Scope creep) to write. But the "core" webclient APIs are done. On the flipside my partner is working on the Fatclient and he will give me his list of APIs to write when he is ready. We have split up the project, with him getting the fatclient and me doing everything on the server.. Its a fair trade :-).