Copy, Copy 2 and other Code Smells

We'll discuss refactoring existing systems. What are some of the approaches and things to look out for.
What are the things that make your heart sink when you open up a solution and look at it for the first time. We've all taken over existing systems that have caused us nightmares to update and maintain. How can we minimise the pain involved in looking after a pre-existing system?