A lot points are already mentioned. But there are a few i cannot totally agree with:
- Deployment of a web application is easy, but deploying a desktop app isn't much more complicated in times of Microsoft ClickOnce or Java Web Start.
- Bug fixing is a web application is not really easy (session less, running under web server process...).
- A web application always has some limitations when it comes to executing security critical operations or accessing hardware.