TechDays 2012 are over, here are my 2 cents:
Windows 8 & WinRT
Home users had to get used to having a Start button/menu since Windows 95/NT, and now, Microsoft has decided to remove the Start button in Windows 8, and to replace the Start menu with an entire screen of applications.
But I can imagine running Windows 8 on a tablet PC (or as Microsoft wants to call it: slates), touch feels more natural on a tablet than on a desktop. Maybe this (or my opinion) will change when Kinect for Windows is released, so you can use your Windows 8 desktop PC with gestures. And I hope that Microsoft will push Win8/Metro through to the new Windows Phone 8, so developers can create apps for Windows 8 and WP8 in XAML+C# or even HTML+JS.
I do not, however, see business users standing in line to accept Windows 8.
HTML5, ASP.NET 4.5 & MVC4
HTML5 can be used already, but we’ll have to support older browsers as well. Luckily, there are libraries like Modernizr to help us. I do believe that HTML5 + CSS3 will make web developers happier in terms of supporting multiple devices in one go.
ASP.NET 4.5 has some improvements like typed databinding, which is very useful, while MVC4 has an updated template site and now supports OpenID authentication out of the box. Furthermore, creating a REST API has become easier to do.
WebSockets
WebSockets are handy to keep a connection open, while keeping load/data usage to a minimum. But again, this is only supported in some browsers at the moment. You can use long polling to support older clients, but then you have to do everything in long polling, or write the same code twice. Luckily, there is a library called SignalR, which enables you to write your code once, and SignalR will make sure that the client browser uses the best possible method to keep a connection established.
Roslyn, or Compiler as a service
Roslyn shall not be present in VSnext. Furthermore, we didn’t see any useful examples to use CAAS in business applications. JetBrains should be able to speed up ReSharper though by using CAAS and the new syntax expression tree.
Async/await
Probably the most hyped new feature of .NET 4.5, which is (of course, this is my opinion) nothing more than compiler magic. The compiler generates a state, thread and callback for you when you await an asynchronous call. So do not expect magic, unicorns and faster applications, because you have to know that in the binary, a lot more code has been generated than your one line of await SomethingAsync().