Introduction to the code refactoring practice in C#
Improving internal design of an existing application with refactoring techniques and design patterns in C#