Quick answer: Triggers module → drag colliders into the Colliders list. Set Inside / Outside / Enter / Exit to Callback. Implement OnParticleTrigger; call ps.GetTriggerParticles to read affected particles.

You want particles destroyed when entering a damage zone. Triggers module enabled. OnParticleTrigger never fires.

The Symptom

OnParticleTrigger callback not invoked despite particles overlapping a collider. Colliders module is on; visual collisions work for bounce/kill but not the trigger event.

The Fix

Particle System → Triggers module:
  Inside:    Callback
  Outside:   Ignore
  Colliders:
    [0] DamageZoneCollider

Each collider must be explicitly listed. Set the action to Callback for the events you care about.

void OnParticleTrigger()
{
    var ps = GetComponent<ParticleSystem>();
    List<ParticleSystem.Particle> inside = new();
    int count = ps.GetTriggerParticles(ParticleSystemTriggerEventType.Inside, inside);
    for (int i = 0; i < count; i++)
    {
        var p = inside[i];
        p.remainingLifetime = 0;   // kill
        inside[i] = p;
    }
    ps.SetTriggerParticles(ParticleSystemTriggerEventType.Inside, inside);
}

Verifying

Spawn particles into the trigger zone. They should disappear instantly. Print on entry to confirm OnParticleTrigger fires.

“Colliders listed. Action Callback. GetTriggerParticles works.”

Related Issues

For sub-emitter inheritance, see sub-emitter. For burst not firing, see burst.

List the colliders. Read the particles.