Método para determinar si la cadena de ruta es máquina local o remota

¿Cuál es la mejor manera, usando C # u otro lenguaje .NET, para determinar si una cadena de ruta de archivo está en la máquina local o en un servidor remoto?

Es posible determinar si una cadena de ruta es UNC utilizando lo siguiente:

new Uri(path).IsUnc

Eso funciona muy bien para rutas que comienzan con C: \ u otra letra de unidad, pero ¿qué pasa con las rutas como:

\\machinename\sharename\directory
\\10.12.34.56\sharename\directory

... donde ambos se refieren a la máquina local: estas son rutas UNC pero siguen siendo locales.

Respuestas a la pregunta(7)

Su respuesta a la pregunta