South Africa are a pretty formidable team. I'd say their batting line-up is every bit as strong as India's, but Steyn and perhaps Morkel aside, their bowling looks pretty pedestrian. England are workmanlike but have very few weak links, good reserves, and have an exceptional team spirit and resilience. All in all, it's hard to split the three.
If England and India were to play a Test series in India instead of playing in the WC, India would of course be favourites. But I just don't understand the bullish "I can't see how England could win a Test match here" talk coming from some of the Indian fans on this forum. England have a strong and balanced team and shown themselves capable of winning Tests anywhere, and well capable of winning against the odds.
The 2-Test mini-series in December 2008 showed that England were capable of scoring runs and taking wickets in India. Sure, they lost at Chennai but that was having played themselves into a winning position, setting India 387 to win. A team which sets targets like that will win more games than it loses. And in my view England are now a stronger team than they were back in 2008.
England v India in England will be an interesting series. I'd have England as favourites in English conditions, but whoever wins it will be close. And if we do win, the hubris of one or two of the Indian fans would make that quite a sweet victory.
PS I have to admit, the battle for World No 1 really doesn't get my pulses racing as perhaps it should. I'm an unashamed Ashes saddo.