¿Cómo leer archivos de texto con codificación ANSI y letras que no están en inglés?

Tengo un archivo que contiene caracteres que no están en inglés y se guardó en codificación ANSI utilizando una página de códigos que no está en inglés. ¿Cómo puedo leer este archivo en C # y ver el contenido del archivo correctamente?

No funciona

StreamReader sr=new StreamReader(@"C:\APPLICATIONS.xml",Encoding.ASCII);
var ags = sr.ReadToEnd();
sr=new StreamReader(@"C:\APPLICATIONS.xml",Encoding.UTF8);
ags = sr.ReadToEnd();
sr=new StreamReader(@"C:\APPLICATIONS.xml",Encoding.Unicode);
ags = sr.ReadToEnd();

Trabajando, pero necesito saber cuál es la página de códigos por adelantado, lo que no es posible.

sr=new StreamReader(@"C:\APPLICATIONS.xml",Encoding.GetEncoding(1252));
ags = sr.ReadToEnd();

Respuestas a la pregunta(4)

Su respuesta a la pregunta