One argument is that the main barrier to webapps is performance, and as soon as hardware gets fast enough, webapps will beat desktop apps. Firstly, there's a question of whether the hardware can ever be "fast enough" and this depends on the specific applications. An illustration is between Java and C. Java's JVM was slower but portable (similar benefits as webapps, for similar reasons). Today, Java is massively popular - but C is also still massively popular, and I would argue that one reason for this is that performance is still important for some applications. Perhaps there will be a similar proportion for webapps.
Secondly, as performance improves, user preferences may switch to some factor other than webapps first. Smart phones are a prime example: instead of people staying on their desktop and switching from apps to to webapps, they have switched from desktop apps to mobile apps. That excess performance is being spent on mobility rather than the web; people preferred the benefits of a small, portable form-factor over the benefits of the web. It may be that when smartphones become powerful enough (dual 1GHz cpus this year), an even smaller form factor will appear - making high performance software a premium once again.
Apart from performance, there are network barriers to webapps: http://en.wikipedia.org/wiki/Fallacies_of_Distributed_Comput...
1. The network is reliable.
2. Latency is zero.
3. Bandwidth is infinite.
4. The network is secure.
5. Topology doesn't change.
6. There is one administrator.
7. Transport cost is zero.
8. The network is homogeneous.
All this will improve, but will it improve enough? Even if it does eventually, in the long run, we're all dead.