Yo diría que necesitas usar es la propiedad Anchors.
Por ejemplo, el diálogo de "Guardar como" de windows, puedes cambiar el tamaño y cada componente se hace más alto y/o ancho.
Pon dos controles en el form a uno le pones todos los anclajes (anchors) en false y al otro déjale Left y top a true. Cambia el tamaño de la ventana (si lo haces en tiempo de ejecución, mejor). Verás como se comportan de forma distinta.
Lo importante utilizando Anchors, es que definas el tamaño mínimo que ha de tener la ventana y sobre ese tamaño pones los controles y sus anchors.
Evita cambiar el tamaño de esa ventana en tiempo de diseño (puede descuadrarte algunas cosas), para hacerte a la idea, maximiza la ventana (en tiempo de diseño) y después la restauras.
También dispones de la propiedad Constraints en la que puedes definir el máximo/mínimo ancho que cada control puede tener, evitando que unos se solapen con otros al cambiar de tamaño. Para ese menester, también puedes usar paneles distintos, uno alineado a la izquierda y otro al cliente, de esa forma tu control en el panel de la izquierda nunca se solapa con el control en otro panel distinto.
Usando esto, no necesitas ningún componente externo y tu aplicación quedará fenomenal
.
Saludos