If you’re applying a dynamic material instance to a mesh, you have to use a Set Material node targeting it, after you set parameter values. If you alter the parameter values further, you don’t have to use set material again.
As your variable names would suggest, if you’re trying to apply the material to a particle system, you need a couple extra things.
In the main tab of your particle system, you need a named material slot.
In the required tab of your emitter, you need a named material override with the same name.
In a blueprint where your particle system is found/spawned, in your particle system details, under particles, you need to add an instance parameter with the same name.
Then, instead of using Create Dynamic Material Instance, use Create Named Dynamic Material Instance, with the particle system as your target, and In Name set to the instance parameter name.
Finally, instead of using a Set Material node use Set Material Parameter node. Use the particle system as your target, with the instance parameter name, the named dynamic material instance.