To be honest, I never understood some of the hate he gets, he seems like a decent enough guy, gets along well with his team mates, usually doesn't get involved in the El Classico fights, doesn't drink, trains insanely hard, gives his 100% in every single match but still gets panned a lot.
According to yahoosports.com, Cristiano ronaldo gave part of his blood to the victims of the train crash in Spain. A very good action for a rich player.
You know, he is criticized because of his arrogance. But he is capable of touching things, like playing for the UNICEF foundation.