What do you like best?
Ranorex minimizes the pitfalls of other test automation products. Maintenance is super fast and easy. Not only can you capture and playback, but you can add steps manually, and code in C# for robustness. Image processing is available with great post-processing options, and the reports are wonderful for debugging and very informative.
Variables and data-driven testing is a breeze, allowing the tester to create one test and iterate though it any amount of times.
Instead of straight programming, Ranorex uses modules which contain steps. These can be dragged and dropped into test cases. I prefer drag and drop any day over typing a method ten times over!
Ranorex recognizes more than just WPF for desktop applications. I've automated everything from .NET, webservices (Html, CSS), Java, PowerBuilder, and mobile devices. The only applications it has a little trouble with is some legacy applications, but what tool doesn't have trouble with that?