Last year in June I worked on improving our Silverlight application’s download speed, by using both IIS7 GZIP, and by minifying the XAP(s).
We used a Visual Studio extension add-on to minify XAP, which meant that we had no maintenance costs to worry about. You can also install using the Visual Studio Extension Manager.
This identifies the “Startup Silverlight Project,” automates excluding duplicate assemblies in child XAPs, and centrally links any dependent assemblies into the startup project. The startup project has a one time cost to include additional assemblies, but the dynamically downloaded XAPs will be much smaller, since all the dependencies are centralized in the Silverlight startup project. Once the tool is installed it can be run by right clicking on Solution = > Minify XAPs.
The results are well worth seeing, as I illustrate below:
I did a fresh checkout of the June 11, 2011 repository, and applied this plug-in again, The effect was dramatic, as you can see in the results. After minifying your XAPs, and enabling GZIP for RIA services, your users will notice a large latency reduction, especially on slow internet connections.