DoTA has a very steep learning curve and the players are often very harsh. I literally used to play this more than any other game for about a year or so, and would play it every night for 2-4 hours, longer on the weekends. With 80+ heroes and so many items, there are amazing levels of play you can reach and fun to be had. The combinations are virtually limitless and if you're good enough you can develop your own special play style.
Some characters are also just extremely fun to play in public matches but not good in tournaments, such as Noobseeker (basically you play hunt the noob who wanders off solo, this is why he is so fun in pubs, but he sucks in tournaments), Pudge (really really fun character to play if you're hosting the game, or join a game with very low lag - try playing him in a tournament though or a high lag game and you can forget about it), etc..
When I was playing it I would pick one hero at a time and just play almost exclusively them for 2-3 weeks, then move on. You can keep going on and on and on this way as there are so many characters to use and have fun with, and the scripting guys are some very talented coders. DoTA is one of my most favorite maps of all time.
Just keep in mind if you start trying it out that the learning curve can be pretty brutal if you're up against experienced players.