When I use the first method, the output node in the blueprint always shows “Return Value”, but with the second method it will either be the name of the parameter or whatever you specify with UPARAM(DisplayName = “XYZ”) - I haven’t seen a way to do that with the first method.
Also with the second method, the parameter won’t show up in blueprints as an input node, only an output node.