Yo usaría un TreeView y un panel

Dentro del panel colocaría por código componentes Frame, que son como paneles pero que los puedes diseñar en ventanas independientes. Así puedes diseñar por separado cada conjunto de opciones. Conforme te mueves por el árbol, creas el Frame adecuado y lo insertas en el panel.
// Saludos