Would "destroying" Wurmcoil Engine prevent its tokens from being created?
Destroying Wurmcoil Engine will definitely cause it to create tokens.  Destroying something causes it to go to the graveyard, and &quot;when Wurmcoil Engine dies&quot; means &quot;when Wurmcoil Engine is put in the graveyard from the battlefield&quot;:

701.7a To destroy a permanent, move it from the battlefield to its owner's graveyard.
700.4. The term dies means &quot;is put into a graveyard from the battlefield.&quot;

On top of that, destroying Wurmcoil Engine is the most common cause of its tokens being created.  Your friend is probably thinking of &quot;destroying&quot; a creature as something different from &quot;dealing it lethal damage&quot;, but dealing lethal damage to a creature literally causes that creatrue to be destroyed:

704.5g If a creature has toughness greater than 0, and the total damage marked on it is greater than or equal to its toughness, that creature has been dealt lethal damage and is destroyed.

This rule is really important because it is why &quot;indestructible&quot; prevents creatures from dying to lethal damage.
If you want to prevent Wurmcoil Engine from creating tokens, you need to do one of the following:

Have Wurmcoil go somewhere other than the graveyard, such as with Path to Exile or Unsummon
Remove Wurmcoil's abilities, such as with Ovinize
Prevent the trigger from resolving, such as with Trickbind