I develop for a software company that uses a rapid-iteration development model (not exactly Agile, but our own verison of it). We release a new version of our product every two weeks. Sooner if major bug-fix or other problem arises. Companies that use this model pose a serious threat to Microsoft's future health, I believe Microsoft learned a valuable lesson with Vista. The lesson is this, if you listen to your customers (constantly poll them on want they want), and build what they ask for, you can't create software that doesn't sell. Notice the whole Windows 7 was my idea campaign? Give people what they want (granted, sometimes they don't know what they want, which is why you have to find out) and they will buy it.
Hopefully this translates to lower prices on the updates, but I don't think there is any promise of that. I like Microsoft products, I use Visual Studio, Office, Win 7, etc. on a daily basis. But let's be honest, Vista was a misstep, Windows development had stagnated, and Mac OSX and Linux had caught up with or exceeded Windows in almost every regard(save only the massive amount of software that is Windows only), before Windows 7.
There are two key factors that allow us to release every two weeks. First, our upgrade system is seamless. Our software connects to the Internet when it's started, downloads an update, notifies the user, and restarts itself if necessary (usually not the case). Second, our software is highly modular. We can upgrade any part of it without affecting the rest of the software in any way.
Anyone who's dug around and programmed for Win 7 knows that it also has much more seamless upgrade system than previous versions of Windows (i.e. you can install video drivers without restarting), and is also very highly modularized. It would not surpise me in the least if Microsoft starts following this sort of development model.
Time will tell.