10 ways to create maintainable and testable Windows Forms applications
Most of the Windows Forms applications I encounter do not exist or have extremely low unit test coverage. And they are often difficult to maintain, with hundreds or even thousands of lines of code behind the various Form classes in the project, but it doesn't have to be.