But is WASM set in stone already? I would have thought there would be a strong interest in seeing higher level languages made available through the browser. Are there fundamental reasons why WASM would never implement the features required to run a CLR (not necessarily a file system but for instance the threading model you mentioned).
The case for using c#/vb/java in WASM is I think strong.
First this would allow developers to write truly cross platform apps, using a lot less hacks than a solution like Xamarin.
The UI could be HTML but I would think that a CLR would ship with a version of WPF (think silverlight).
In a intranet/corporate environment, it would make the deployment of internal applications trivial.
You could have webapps with the same code base that run on mobile and desktop. The download time is not necessarily relevant. The code would be stored on the machine like any other webapp.
I think there is a reason why c#, python or java are so widely used over c++ outside of performance critical code. It is a lot easier, faster and safer to develop. I don't think c++ is a reasonable alternative to c# or java. As for rust, I don't have an opinion on its merit as I am not familiar enough with it, but its developer base is a small fraction of each of the vb/c#/java developer base.