is there any way to dynamically create block components. Suppose there is a TextControl component in a block and I want users to click on add new field button and it creates new TextControl block automatically?
Yes, This testimonial block will add new field upon clicking "+" button. More better explanation of how things are working under the hood, see this blog post