Consider a function which returns two values. We can write:
// Using out: string MyFunction(string input, out int count) // Using Tuple class: Tuple
There is no "best practice". It is what you are comfortable with and what works best in your situation. As long as you are consistent with this, there is no problem with any of the solutions you've posted.