This is going to be an extremely controversial take but the reason Overwatch failed is because of its diversification of balancing. Specifically tanks.
There are a ton of “team” based FPS games on the market but Overwatch plays incredibly differently from the majority of them.
Most other team based FPS are teamed based simply because they require coordination with the rest of your team. The specific character you play is less important.
Overwatch is different. Not only is coordination with the rest of your team incredibly important but half the battle is simply which character you pick from spawn.
Open queue can be fun but does not work in a competitive sense because of this fact. In Overwatch a team without a tank is not a team.
Requiring a tank, support or DPS in a team is fine but the problem lies with how each category is balanced.
In Overwatch, a tank is not simply a hero with defensive abilities. A tank is a hero with 300%HP and 300% larger hitbox.
This diverges balancing massively, with this setup it is basically impossible for players to have remotely the same level of impact on a game.
At least with support and DPS, all heroes have a similar health-pool and hitbox. This makes the game more consistent across the board and is closer to a lvl playing field.
Tanks throw this completely out the window. The game is no longer even remotely a lvl playing field. The team is purely based around your tank/s.
This is Overwatch. Sadly, it doesn’t work that well. It is great when you are in a pre-made but in my 6 years of playing I have only had a full pre-made team 3-4 times.
With a team of randoms, you want each player to have a similar level of impact. This is simply because what makes any competitive game frustrating is losing control. When you feel like nothing you do matters, that is when you simply want to log off.
Overwatch is the worse game I have ever played in this regard. The keystone of any team is the tanks, with the rest of the team being the supporting structure.
The problem with this set-up means that teams live and die together. There is no back and forth on which team is winning. 99% of the time whichever team gets the first pick wins that team fight.
This sucks. players want to make an impact. Players want to be able to carry a losing fight but no game makes this harder to do than Overwatch simply because,
Overwatch is not a level playing field.