subinstalaciones en el nodo de aplicación c #

Estoy usando el archivo app.config que se crea con una aplicación de consola y puedo leer el val1 de la clave1 usando elConfigurationSettings.AppSettings["key1"].ToString()

<configuration>  
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
    </startup>  
    <appSettings>
        <add key="key1" value="val1" />
        <add key="key2" value="val2" />  
    </appSettings> 
</configuration>

pero tengo demasiadas claves y valores que quiero que sean categorizados.

Encontré algo que es difícil de usar en mi aplicación ya que quiero acceder a las teclas de manera similar a la anterior.

Mostrando todos los nodos y no puede leer un nodo sin obtener todos los nodos

por ejemplo lo que quiero hacer:

<appSettings>
    <Section1>
        <add key="key1" value="val1" />
    </Section1>
    <Section2>
        <add key="key1" value="val1" />
    <Section2>
</appSettings>

Y si hay una manera de acceder a ella usandoConfigurationSettings.AppSettings["Section1"].["key1"].ToString()

Respuestas a la pregunta(2)

Su respuesta a la pregunta