No creo que haya algo así como una convención 'oficial'. Hasta donde yo sé, muchos desarrolladores experimentados de C # consideran que lo siguiente es una buena práctica:
PascalCase for public member variables (string MyName = "James")
camelCase for local variables (string myName = "James")
_leadingUnderscore for private member variables (string _myName = "James")
Con este enfoque, se puede distinguir entre las variables locales y los miembros públicos y privados por el caso de su primera carta.
Como con cualquier convención de codificación, esto también está sujeto a preferencias personales. Por lo tanto, no hay una respuesta definitiva. Un objetivo general debe ser mantener el código lo más legible y comprensible posible.