I have found that DotA Allstars has been very fun and is still very challenging to play for these past 4 or more years. Even now, with the latest release from Dota's creator--Icefrog--with quite a lot of upgrades and changes added to the game, it's still very enjoyable to play with friends on a 5 vs 5, 4 vs 4, or 3 vs 3 basis.
What's so fun about this game is that it really involves teamplay, team coordination, timing, and oneness of mind for the team. There are a lot of elements in it that make it complex enough, such that no two games are ever alike. It can be very challenging because even at the last moment you can stil turn the game around and win even if it might appear like your opponents are willing. I sometimes think that DotA Allstars is somehow similar to life as a whole, what with the challenges and the situations that you are placed in when facing the opposing team.
Whether you play the good side (Sentinel) or the evil side (Scourge), you are definitely in for a very fun experience that lasts for about an hour or less for each game.