They split the two matches they played last year, with Nadal winning on clay, and Federer winning on an indoor hard court in London. It should be interesting that they are meeting in a semi-final, not a final. I suspect this will provide less mental pressure and the Swiss may eke out the win (in 3 sets).
Interestingly, Federer and Nadal are not playing the best tennis on tour right now, that distinction goes to new World #2 Novak Djokovic who is yet to lose in 2011, racking up a stunning 23 match winning streak, which he will put on the line against surprise semifinalist Mardy Fish. Regardless of who wins the Federer-Nadal semifinal, I really don't see either one of them beating Djokovic the way he is playing right now. He proved that last week by winning the Indian Wells Masters 1000 by beating Federer in the semifinals and Nadal in the final.
MadProfessah's prediction: Djokovic defeats Federer in the final.