Are there any practical uses of the TypedReference struct that you would actually use in real code?
EDIT: The .Net framework uses them in overloads
Yes. I'd use them if I needed interoperability with C-style variadic methods.
Why do these overloads exist?
They exist for interoperability with callers who like to use C-style variadic methods.