La form non è altro che un pannello con in più una testata.
Ad esempio, io costruisco normalmente dei pannelli da inglobare in altre form, partendo appunto da una form.
Una volta inserita in un'altro container (parametro Parent valorizzato), la form diventa uguale ad un panel, e le funzionalità pure.
Questo ti permette di costruire blocchi di codice separati e riciclabili in più form, dei cruscotti personalizzati per determinate funzioni e scopi.
La form, a differenza di un panel, ha in più la possibilità di creare dei toolbox, che sono delle form di utilità che ti attivi per esempio per cercarti un codice da qualche parte, e inserirlo in un campo di testo. Oppure di gestirle come finestre di dialogo personalizzate, od anche come sfondi per la tua applicazione.
Comunque, a parte questo, è ovvio che l'uso in embedding, all'interno della stessa applicazione, sia alquanto inutile, oltre che difficilmente gestibile. Questo per rispondere alla nota di fsurfing...