Most performant/functional way to add actions/filters?

There is no difference between 1 and 2. Both are same in every single case. So, I’ll consider 1 and 2 as A and 3 as B.

Now in A the add_action() callback function is a named function whereas in B the callback function is an anonymous function and this is the main difference. I hope you know that using remove_action() we can deregister an action hook and to do that we have to pass two parameters. One parameter is the hook name and another is the callback function name. So if you register a hook with an anonymous callback function it’s not possible to deregister that later!

Hope it’s clear now.