Самое важное, что следует здесь отметить, это то, что Form - это не более чем класс C #. Если вы думаете о Форме в этих терминах, ответ, вероятно, сам по себе выскочит.
По сути, у вас есть два варианта. Во-первых, вы должны указать в форме свойство, для которого вы хотите передать данные. Это достойный метод, если ваша форма не полагается на передаваемые данные, чтобы функционировать.
CoolForm myForm = new CoolForm();
myForm.MyProp = "Hello World";
myForm.ShowDialog();
Второй вариант - передать данные через конструктор. Я предпочитаю такой подход, когда форма опирается на данные, чтобы функционировать. Я также склоняюсь к тому, чтобы пометить конструктор без параметров как закрытый, чтобы гарантировать правильную реализацию формы.
CoolForm myForm = new CoolForm("Hello World");
myForm.ShowDialog();
Надеюсь, это поможет ...