aryd
in general, if you don't specify "For Each" C3 will treat objects as a group (so, in your case they all get the same random number because the actions are only executed once). With the For Each, the actions are run individually for each object and they all get a different random number.
so, performance is better without the for each, but if your game logic requires individual control then for each is the way to go.
it gets even more confusing when you add "self" to the mix. You can have something like:
every tick, Killer.X = self.X + 5
That doesn't require "for each", but each one will have 5 added to their individual X coordinate.
However, Killer.X = self.X + Random(5) would require "for each" if you wanted them to each get a different random number.
But once you understand how events work and how picking applies actions to objects you can do amazing things!