Sorry, when you say .NET, are you talking about Silverlight?
Are you aware that you need something on the serverside and that .NET, especially with ASP.NET MVC is actually a very good choice here?
.NET is fine for online apps, if you're saying bespoke browser plugin based solutions like Silverlight and Flash are shit then yes I agree with you however, but Silverlight is not .NET, it's just a technology that utilised .NET.
FWIW in separating concerns the biggest problem there is HTML5, which fails epicly at this. Microsoft for it's part is one of the better vendors out there are ensuring you have good tools to separate things like persistance, web services, business logic, and server and client front end stuff. A decent alternative is Java with libraries like Spring, other technologies like PHP and Ruby are pretty hopeless in these respects though - that's precisely why Microsoft does so well in the enterprise, even for web apps because for all their faults, they know what developers need to follow good practice software development, even if they're not so great at doing it themselves, just like the Java world understands this. The PHP world is still dominated by kids who really don't get even simple things like MVC and has yet to grow up, some projects make an effort to fix this like Zend, but others like CakePHP and Symfony create their own bastardised versions of MVC instead amongst other thnigs because they just don't know how to get it right.
Yeah .NET has it's faults, but it's still one of the best choices for doing really good quality online application development right now alongside Java. Silverlight, like Flash, and like Java applets though, is indeed shit.