Load form and use custom submit handler
@kiamlaluno is right, you have to use the form builder directly. But for this question in the comments there is a solution:


  ... its a custom class extending FormBase. But I still don't get how
  to change the submit handler. In my controller ...


you can put additional parameters in formBuilder()-&gt;getForm('Drupal\custom_module\Form\CustomForm', $param), which you then can use in the form class to build the form differently, for example add different submit handlers:

  public function buildForm(array $form, FormStateInterface $form_state, $param = NULL) {

    if ($param == 1) {
      $form['actions']['submit']['#submit'][] = 'custom_module_form_submit';
    }

  }