Postando minha resposta de https://stackoverflow.com/a/46609559/492336 :
Você pode executar esta instrução SQL de dentro do MySqlConnection:
SHOW SESSION STATUS LIKE 'Ssl_cipher'
, e ele mostrará se a conexão está criptografada. Código de exemplo:
var connection = new MySqlConnection(ConfigurationManager.AppSettings["Test"]);
connection.Open();
var command = new MySqlCommand("SHOW SESSION STATUS LIKE \'Ssl_cipher\'", connection);
MySqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine($"{reader.GetString(0)}: {reader.GetString(1)}");
}