In the past, deploying Windows applications has often been a painful and arduous task. Previous versions of the .NET Framework made it easier to deploy Windows Forms applications because the .NET Framework's inherent architecture removed DLL versioning problems and allowed side-by-side execution. However, it was still more difficult to bundle and deploy Windows Forms applications than it was to simply give a customer the URL to an ASP.NET web application.
The goal of this chapter is to show you that the old adage "Windows is harder to deploy" no longer exists. Using ClickOnce technology, you can have the best of both worlds: The rich, highly interactive, high-performance environment of Windows Forms with the quick and painless deployment that used to be the sole domain of ASP.NET applications.
This chapter will progressively build a fairly large sample to illustrate the various principles of ClickOnce technology. It is recommended that you follow along with this sample as the chapter progresses, as true mastery of ClickOnce only comes from the actual development and maintenance of a ClickOnce application.