As far as the MOBA genre goes, there are quite a few high-end competitors out there. While I’ve never played Dota 2, League of Legends was like the only thing I played from 2011 to 2015. Every popular game (especially on this side of the gaming world) is going to have pros and cons.
Heroes of the Storm isn’t my favorite game. My largest problem with this genre is that the time investments in each individual match is huge compared to other things, and because mistakes are so punishing to the player and their team, it’s very easy to get frustrated (or have teammates hate you every single game).
The single largest reason I didn’t play League of Legends competitively much is because the community in the MOBA genre is so resentful. They will find your mistakes and attack you more viciously than your enemies because you’re bringing them down. It’s absurd to me that many of these people will give up and be hateful rather than being cooperative and working together. This criticism goes for the entire genre, and it’s the main reason why I don’t play these types of games as often as I used to. It tends to make losing very difficult to enjoy, and I prefer games that are always fun rather than the polar opposites of hating it during a defeat and loving it when I’m winning.
This game in particular is a bit better in that respect. Games in HotS tend to be around twenty-ish minutes long (rather than the average League game of thirty to fifty minutes), so each game isn’t as much of a commitment. You also cannot communicate with your enemies, and I think this makes it much easier for the toxicity of teammates not to spread. In my experience, if a teammate is bad people will vent their anger towards the enemy team, telling them how bad their ally is. Since there is no “All chat” in Heroes of the Storm, people can only talk to their teammates and this reduces both the rage from the other team and the potential for your ally to rage at the other team about you.
The biggest problem I have about this game over League of Legends is that when a team starts winning in Heroes, it’s very difficult to turn the tables on them. You will usually be able to tell which team is going to win five minutes into the game, but in League, comebacks are more prevalent and the advantage isn’t established so quickly. This is probably due to the difference in the match length for both games.
My favorite thing about Heroes of the Storm however is something relatively unique for the MOBA genre, and that is the talent system. Rather than accruing gold by killing minions and players to buy items that change your stats, you gather experience to gain levels and earn a choice of talents. Now, the “level system” isn’t exclusive to HotS, but gaining levels and upgrading your abilities to account for the playstyle you want for that match certainly is. Rather than buying different items to counter the enemy team’s characters and abilities, you’re changing your own abilities to have a better control over what you want to do in that game.
Aside from that, the fact that this game has several different maps to play on really adds to the dynamic of playstyle. In a game of League everything is completely, one hundred percent skill based because the only thing that ever changes is the characters on both teams. Since the map and objectives fluctuate so much in Heroes, players and their characters will tend to be better in some situations and worse at others, and it adds a lot of replay-ability to the game. Also, since the character roster is so much smaller than that of League of Legends (~66 vs. 134) it’s much easier for people to get into and understand.
Between the two games (not having enough experience to judge Dota 2,) I would say Heroes of the Storm is superior in terms of how enjoyable it is on a match to match basis. Is it difficult for me to enjoy when I’m losing? Absolutely, but in Heroes the game will be over in fifteen more minutes, whereas in League it could end up being neck and neck for half an hour only to have victory stolen from you by one simple misplay.