no se podría hacer algo parecido a lo que tu dices pero sin utilizar interfaces?
me refiero a definir una clase TFormOrigen con el método virtual 'Responder', y hacer que los dos formularios de origen desciendan del TFormOrigen, implementado cada uno el método 'Responder'. En el formulario que se muestra en vez de tener un campo de tipo TForm, se declara de tipo TFormOrigen por lo que ya se puede llamar al método 'Responder' sin hacer ningún cast.
Bueno yo lo haria asi más que nada por que no tengo ni idea de interfaces
