How to destroy an instantiated prefab in C#?

I’m triggering an animation that plays when the Enemy mesh is colliding with a Projectile mesh that is tagged.
The animation should play where the “Enemy” location is.
The script is attached to the Enemy.
The game object that has the animation is a 3DText mesh made into a prefab.
The animation plays but does not disappear.
How can I destroy the prefab (that plays the animation)?
If I do: Destroy(gameObject) it will destroy the Enemy only.
Do I need to set a clone for the prefab? And destroy the clone?
Thanx Guys!

public class Bonus_Animation : MonoBehaviour
{
//GameObject with the bonus animation attached
GameObject spawnBonus;

//bonus points at 50
public int points = 50;
	
	
	void OnCollisionEnter (Collision col)
	{
		if(col.transform.tag == "Projectile")
		{
			Instantiate(spawnBonus, transform.position, transform.rotation);
			

				
		}
	}
	
}

Yes, you’re close. Check this out:

public GameObject spawnBonus;
private float time;
private GameObject instantiatedObj;

void OnCollisionEnter(Collision col)
{
    if(col.transform.tag == "Projectile")
    {
        instantiatedObj = (GameObject) Instantiate(spawnBonus, transform.position, transform.rotation);
        Destroy(instantiatedObj, time);
    }
}

Late but:

Destroy(Instantiate(gameobject, position, rotation), time);

You can add a script to your animation mesh that can read something like

var life : float;

function Start()
{
   life = Time.time + 1.0;
}

function Update()
{
   if(life <= Time.time)
   {
      Destroy(gameObject);
   }
}

not tested but seems like it work. Let me know if it doesn’t.

public GameObject spawnBonus;

private GameObject spawnBonusClone;

void OnCollisionEnter(Collision col)
{
if(col.transform.tag == “Projectile”)
{
spawnBonusClone = Instantiate(spawnBonus, transform.position, transform.rotation);
Destroy(instantiatedObj, 2.0f); // 2.0 seconds show then destroy
}
}