Many are dual types, so have attacks in more than one category. It would be hard to come up with a definitive list like you are asking for. As an example: I love Victreebell and Venasaur against Vaporeon. My favorite attack of any grass/poison type is Sludge Bomb. But, I love using my Venasaur with Razor Leaf/Petal Blizzard. I have similar ones (CP/HP/iv) with Vine Whip/Sludge Bomb and Razor Leaf/Sludge Bomb, but that one seems to be my go-to attacker. With Victreebell, I use the one with Acid/Sludge Bomb more than the others.
Looking at that… On both of those, I seem to prefer using the dual type attacks: Grass/Grass or Poison/Poison. Maybe that has something to do with my preferences? No, I checked some of my other favorites and they are dual types with different type attacks. I would try looking more into ‘types’ rather than specific Pokémon to see what the defender’s weaknesses are.
The best way is to go and train or do battle. For your Arcanine example, water is the obvious choice to put out fire. There is also a Ground or Rock type advantage. But which of yours to do it with? Blastoise, Cloister, Golduck, Golem… Practice with each of yours and see how they do. I would try a Golem and see if Arcanine has a special Fire or Buldoze attack. Maybe Poliwrath with Mud Shot/Hydro Pump?
Your style of battling is also important. Are you a Tap Tap Tap Tap Tapper or do you make attacks then dodge? Venasaur is painfully slow for me, but is great for the job. With its type advantage it can just take the attacks until the opponent is defeated. At 2,342 CP it is a beast to begin with. Something fast that I can Attack Attack Attack Dodge Attack Attack Attack Dodge… Is more to my style. I am sure you will have a few favorites that you always include in a battle too. A list would be time consuming, it is better to try and remember what you had success doing battle with and adjust for their attacks on the next round. For a high level gym, you get multiple battles against most of them, if you are by yourself. You will find mostly the same defenders in every gym. That means you can power-up your favorite attackers against them! Three Vaporeons defending a gym? Raise up a few Venasaurs (or critter of your choice) to put in the lineup!