When would you use an output parameter vs a return variable, or vice versa? In the following simple example, I can achieve the same thing using either one.
Using out
I prefer:
Using a return value when you only need to return one item.
Using output parameters when you need to return more than one value.
Another common usage pattern, although not my preference, is to use return values only to inform of success or failure and output parameters for anything that needs to be returned.