Wait and Trigger Once are probably the most misused events in Construct.
Trigger Once is executed once when other conditions in this event are all true. (or, if there are no other conditions, then it will be triggered once on the start of layout).
If other conditions become false and then true again, then this event will be executed again.
Many beginners think this event means "trigger only once in the game", which is wrong.
Wait is a convenient way to add a delay, but I prefer only using it for unimportant stuff and short delays - like Wait 0.5s, spawn Particles. It shouldn't be used in situations where you control game mechanics.
Imagine you have an event like this:
On collision with PowerUp sprite -> Player Set speed to 500, Wait 5s, Set speed to 200
What happens when you pick up one power-up, and then after 4 seconds pick up another one? You expect it to "recharge" your speed for additional 5 seconds, however after 1 second the first "wait" kicks in and resets the speed back to 200.