Смотря что понимать под "выучил". Понимание на слух речи, текстов уже не так и плохо.
Да, говорение само собой не придёт, для этого надо именно что развивать этот навык, с письмом тоже самое.
На самом деле хорошая школа/репетитор могут дать неплохую базу, основы грамматики, лексики, а самое главное - поставить правильное произношение.
Подкасты, книги, проги и прочее хороши, как последующая надстройка на уже имеющуюся базу.
Но это моё личное мнение, плюс опыт с несколькими иностранными языками.
Выучить язык можно только самостоятельно. нужна личная мотивация и время. когда есть цель то все свое время уделяешь этому и не устаешь потому что то грамматику поделаешь, то на произношение, то почитаешь, то подкасты послушаешь.
Я знаю людей которые за полгода выучивали абсолютно незнакомый язык с 0 до B2 за полгода когда замаячила перспектива поучиться заграницей или перспектива работы в иностранной компании или отношения с нерусскоговорящим.
Я не могу сказать за сложные языки типа китайского или арабского, но европейские языки типа английского, итальянского, испанского, португальского, французского, немецкого можно выучить быстро и не платя деньги. И платя по минимуму - типа 3-4 тысяч в год за подписку 2-3 приложений.
А можно вообще бесплатно - на ютубе куча уроков пошаговых и у всех приложений есть бесплатные версии.
Главное мотивация, время и регулярность.