I agree with Oscar, there is no 100% right answer. That decision rests mostly on you, as the person who knows the most about all of the fine details that would affect the decision.
You may also consider some sort of templated or EAV (entity-attribute-value) approach, where the main table just holds generic columns like “question1”, “answer1” , “question2”,etc. Then you have a child table that defines a record for each question per form type.
As for the listing of all forms in one list, that’s easy, just add a table listing all the different forms, and create a nav view from it with an appropriate row-select behavior.