Many people know how to counter this or that hero: for example, take Tracer against KTZ. Some even know how to counter this or that hero with the help of individual mechanics: for example, take blindness / kinetic armor against an AA hero or energy armor against a mage hero. But few people have a plan to counter a mechanic in general. What I mean?
Here’s my advice:
Thou need to have an initial plan - which part of an enemy team to counter. Either a tank and a healer, or enemy assassins. In the first case, a correct damage is selected, that is, assassins are picked last in the draft. In the second case, on the contrary, a correct defense is selected, that is, a tank and a healer pick last.
Tunnel damage is countered by tunnel healers, burst damage by burst healers. Tunnel healers are countered by burst Assassins, Burst healers are countered by tunnel assassins, Tanks without energy armor are countered by mages, tanks without kinetic armor by AA heroes, and so on…
Of course there are exceptions and nuances. For example, some heroes have both energy and magic armor, some AA heroes can burst, and some mages have tunnel damage. Or for example Lunara who is an AA hero, but her poison is magic damage. In addition, no one bothers to take to ETC, which does not have energy armor, some Zarya, which has both, and even shields. Or vice versa to Anub 'Arak, who has only an energy armor, take Artanis.
P.s. In addition, the game has buff/debuff mechanics. Personally, I consider her one of the strongest in the game. For example, a debuff on healing or damage.
I hope someone it will helps. Good luck :)))