Сложный вопрос, на который нет однозначного ответа. Я знаю, что существует много способов создания сайтов. Например, для создания сайтов ГУГЛ никаких специальный знаний не требуется. Набираете "сайты гугл" и создаете сайт при помощи специального мастера. Таких "мастеров" много. Их еще называют движками. Хотя, безусловно, любой уважающий себя создатель сайтов должен знать HTML - язык, который воспринимают браузеры. Разные фирмы разрабатывают разные системы создания сайтов. Майкрософт предлагает технологию ASP .NET и язык C# (есть разные версии - формы, MVC, Сore) Оракл предлагает технологию JAVA и язык JAVASCRIPT. Многие разработчики используют PHP. Какую технологию следует изучить? А я НЕ ЗНАЮ! Я использую ASP .NET. Но не потому что эта технология лучше других, а потому что я ее изучил и умею ей пользоваться. Но я умею пользоваться и движком Джумла, и просто HTML5. Технологий много. Все изучить нельзя. Нельзя объять необъятное. Я выбрал ASP .NET потому что Майкрософт предоставляет нашему университету бесплатно программное обеспечения по этой технологии.
Можно создать хороший сайт с помощью CMS, и можно создать плохой сайт на любых языках. front end: HTML, CSS, JavaScript back end: какой-нибудь серверный язык (PHP, Python, Ruby, Go, Java, C#, JavaScript, …), база данных (MySQL, PostgreSQL, MongoDB, …)