Ответ 1
Они идентичны.
UTF8Encoding
наследует Encoding
.
Поэтому вы можете получить доступ ко всем статическим членам, объявленным Encoding
с помощью квалификатора UTF8Encoding
.
На самом деле вы даже можете написать ASCIIEncoding.UTF8
, и он все равно будет работать.
Он будет скомпилирован для идентичного IL, даже в режиме отладки.
Я бы рекомендовал использовать Encoding.UTF8
, поскольку он показывает, что происходит более четко.