You're right.
Please note that modal dialogs will not be automatically deleted upon closing (unlike non-modal dialogs), so you need a template, for example:
using (FrmModal myForm = new FrmModal()) { DialogResult dr = myForm.ShowDialog(); if (dr == DialogResult.OK) {
In the newest form (which I called FrmModal) set the DialogResult property in the button event handlers accordingly, for example. if you have an OK button, you want to set DialogResult = DialogResult.OK to the event handler for that button, and then call Close () to close the form.
source share