I think most of us agree that the fastest way to learn a language is to just jump in and swim. That is easy to say, but not often so easy to do.
If we live in a family that speaks one language at home and the place where we live speaks another outside of the home, it is hard to jump in and swim. It is also hard when our family and our friends speak one language and the little shop on the corner speaks our language and everyone at church speaks our language. There isn't a need to speak that language that is outside of our circle.
Adult language learners often learn to understand spoken language before learning how to speak. Some learn to understand, read, and write in a new language, but never master the spoken version. I think that adults are generally more shy about trying out the spoken version of a new language than young children are. I have adult students who never speak English except with me. They can do all the "book exercises" without a mistake. They read novels in English. They are fully informed of the news, and can follow a conversation very well. They chatter away with me alone But, in a group, they just won't say a peep, even when the group is small and full of empathy and encouraging. The fear of making a mistake is overwhelming for many English language learners.