Vladimir Ch,
1)вы начали изучать иностранный язык вообще с нуля или в школе всё же учили и самостаятельной работой "поднимали" школьный уровень?
2)если за 3 (!) года вы выучили иностранный язык только на уровень B1, то это, по моему мнению, невысокий темп. Очень невысокий.
Как я понимаю, градация уровней такова: A1, A2, B1, B2, C1, C2 (С2- это наивысший уровень). Уровень B1 недостаточен для чтения неспециализированных газет, но достаточен для того, чтобы уловить общую мысль статьи.
Не знаю ни одного человека, который бы с уровнем B1 смог бы "выпаливать" в разговоре предложения, состоящие из более 5 слов. И мог бы рассуждать на иностранном языке.
3)вы правы в том, что желание изучать язык- это главное. Если бы ваш знакомый занимался иностранным языком 6 раз в неделю (из них 3 раза в неделю с репетитором), минимум по 2 часа в день- то за полгода он бы дошёл до уровня B1. По меньшем мере, в чтении печатного текста и в разговорной речи. В отношении понимания речи на слух и в произношении до уровня B1 за полгода- не знаю. В этих областях нужна природная предрасположенность, репетитор или курсы здесь вторичны.