What is the absolutely fastest, most streamlined and simple way to communicate in blueprints?

Direct communication would be: Weapon → component → event

You’re above code is primed for direct communication. You spawned and created a var ref for the weapon. You technically don’t need to use a BPI at that point, nor casting.