Letras alemanas y codificación en C #

Tengo una función de descompresión, y estoy usandoSystem.Text.Encoding para asegurarse de que los archivos que se están extrayendo conservan los mismos nombres después de la extracción, ya que generalmente los archivos que estoy descomprimiendo contienen letras alemanas.
Probé diferentes cosas comoEncoding.Default oEncoding.UTF8 pero nada funcionaäÄéöÖüß.txt se convierte a„Ž‚”™á.txt o en caso de defecto es cajas negras: /

¿alguna sugerencia?

using (ZipArchive archive = System.IO.Compression.ZipFile.Open(ZipFile, ZipArchiveMode.Read, System.Text.Encoding.Default))
{

    foreach (ZipArchiveEntry entry in archive.Entries)
    {
        string fullPath = Path.Combine(appPath, entry.FullName);
        if (String.IsNullOrEmpty(entry.Name))
        {
            Directory.CreateDirectory(fullPath);
        }
        else
        {
            if (!entry.Name.Equals("Updater.exe"))
            {
                entry.ExtractToFile(fullPath,true);

            }
        }
    }
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta