What dota lacks compare to any moba game or other competitive games, is the matchmaking and proscene experience, this holds back the game from its true potential.

Dota 2 needs

1. REAL ranked matchmaking with seasonal/yearly mmr reset. What we have now is a joke, not to mention valve is asking for phone numbers for this joke.

2. Surrender vote option at 25 min. The lack of surrender vote achieves the opposite of what it supposed to be. Players become more and more "toxic" and frustrated thx to not having the option of surrender. Even pro players have this basic human right to do it in tournaments, but the players in general are restricted? I am someone who allways favored the "no surrender" mentality for years, but not anymore.

3. Better pause system (http://dev.dota2.com/showthread.php?t=160426), for more fairplay.

At this point there is not much improvement over dota 1...the service which helps to grow and maintain playerbase is the same as it was in dota 1 and thats very weak.

I allways thought the succes of LoL doesnt came from gameplay, but mainly from the service they offer. Regions are separated: as it should be. Also it has competitive ranked matchmaking and surrender vote and many more small positive differences like that, which are not directly related to game design.
For example valves quest/achievement hunting with battlepass definetly is a bad system which further "improves" toxicity and frustration in dota games, players in dota dont focus on winning, they focus on completing the quests.