O padrão de chave é aberto pelo guideline do C#, mas como por padrão as ferramentas usam uma em cada linha, a doc também, acaba que todo mundo usa assim, trabalhei em uma empresa que usava na mesma linha, o código fica muito mais limpo.
sobre o PascalCase, provavelmente é herança do Visual Basic, pois lá TUDO é assim: IF, Else, True, False...
O prefixo I nas interfaces é de longe a melhor coisa que eu já vi, pois só de bater o olho tu já sabe do que se trata, fica muito mais legível.
Atributos privados com prefixo _ se não me engano é uma prática do Python e do JS/TS também é cai no mesmo conceito das interfaces, só de bater o olho tu já sabe o que é.