Η μια εναλλακτική σου, την οποία αν καταλαβαίνω καλά απορρίπτεις, είναι αντί για φόρμες να φτιάξεις user controls και να προσθέτεις αυτά στη φόρμα σου. Η λύση αυτή είναι κατά τη γνώμη μου πολύ καλή, γιατί και πιο "μοντέρνα" αισθητική μπορείς να πετύχεις, και μετά το user control να το ρίξεις πάνω σε μια άδεια φόρμα, και να το κάνεις φόρμα χωρίς κώδικα.
Αν όμως θέλεις οπωσδήποτε να το κάνεις αλλιώς, τότε πρέπει η κεντρική σου φόρμα να είναι MDI parent (IsMdiContainer=true) και μετά, όταν δημιουργείς την child φόρμα να κάνεις:
MyChildForm form = new MyChildForm();
form.MdiParent = myMainForm; // ή this
form.Show();
Έτσι θα έχεις το κλασικό MDI user interface.
Νατάσα Μανουσοπούλου