destroying unused particles unity code example
Example 1: how to make a partical system to destroy itself after it finishing
GameObject explosion = Instantiate(_Explosion, transform.position, Quaternion.identity);
Destroy(explosion, explosion.GetComponent<ParticleSystem>().main.duration);
Example 2: c# delete particle system after finished
Destroy(gameObject, GetComponent<ParticleSystem>().startLifetime);