Антон, Вы допустили неточность: ассемблер - язык низкого уровня. И наоборот - все другие перечисленные Вами языки - высокоуровневые.
Что касается сложности/простоты - все зависит от человека и задач, которые он собирается решать. До какого-то предела сложности одну задачу можно решить на нескольких языках почти одинаково (если эти языки хоть немного схожи меж собой). Дальше начинают влиять особенности каждого отдельного языка.
А вообще, по-простому - самый легкий язык тот, который хорошо документирован, обладает большим сообществом (чтобы было у кого спросить совета), и который позволяет легко, красиво и правильно делать работу.
Наверное, самый лучший ответ
Ага, жабоскрипт можно понять практически без опыта, ага. :) Хороший вброс, поржал. :)
Одним из самых сложных языков программирования считается Malbolge (https://ru.wikipedia.org/wiki/Malbolge).
Язык разработан с целью быть максимально сложным для написания программ. Получил своё название от Malebolge, восьмого круга ада Данте.
Довольно трудно выделить один конкретный язык, так как под классификацию "самый сложный" попадают многие языки класса "Эзотерические", которые в большенстве своём являются пародией на другие языки или являются шуткой.
Самый известный язык из этого класса называются Brainfuck, а под самым сложным можно выделить Malbolge, который был создан специально для максимального усложнения написания кода. Такие языки даже имеют свою собственный подкласс с названием "Чёрный ящик"
Самыми сложными с точки зрения того, какие операции они позволяют делать, являются языки высокого уровня. На данный момент их 3: С++, Java и С#. Любители Apple скажут, что есть ещё Objective C, но он есть только для iOS.
Исторически С++ появился раньше всех. Код, написанный на С++, можно скомпилировать в любой операционной системе. Однако С++ не обладает большой частью функциональности, реализованной в Java и C#, плюс, с точки зрения программиста на последних двух языках, его "синтаксис" подчас чересчур громоздок и во многом устарел. Существуют различные расширения С++, типа Qt, которые пытаются устранить этот разрыв, но у этих расширений не очень-то получается.
Одна из причин, по которой С++ сохраняет свою популярность, заключается в том, что в С++ нет так называемого "сборщика мусора" - программы, автоматически чистящей память от неиспользуемых объектов. Это ставят С++ в преимущество, потому что программист получает ручной контроль за памятью. Поэтому С++ любят использовать для тех процессов, где расход памяти кажется настолько критическим, что автоматический сбор мусора не кажется вариантом. На деле, сборщики мусора в Java и С# заметно продвинулись со времён первых версий. Так что преимущество становится всё более сомнительным, особенно на фоне того, что а) для каждого объекта в С++ приходится писать дополнительный код деструктора, освобождающего память, б) не уничтоженные вовремя объекты - постоянные источник трудно отлавливаемых багов, в) в Java и C# есть методы, позволяющие прямо указать, что объект должен быть удалён в конкретном месте.
Java более проста в своём синтаксисе, чем С++, на Java написано куча программ для интернета вещей. Как и С++, Java изначально была многоплатформенной. Тем не менее, большая часть функциональности, которая есть в С#, на Java реализуется внешними пакетами, поддерживаемыми полутора программистами и потенциально рискующими конфликтовать друг с другом. Плюс, синтаксис Java кажется мне всё-таки более громоздким, чем у C#.
Как вы уже поняли, моим фаворитом был, есть, и вот уже 17 лет остаётся C#. Это язык с наиболее чистым синтаксисом, позволяющий изящно писать программы. Вся та функциональность, которая в Java достигается встраиваемыми пакетами, в С# уже есть. Плюс, пакеты туда тоже можно встраивать.
Многие программисты любят не любить C#, и связано это с его историей. C# - детище Microsoft, а Microsoft в целом имел имидж жёсткого копираста. Изначально на C# программы можно было писать только под Windows, что ограничивало его применимость по сравнению с Java. Плюс, единственным редактором, в котором можно было писать на C#, долгое время оставался Visual Studio.
Тем временем, всё это давно уже изменилось. Майкрософт стал распространять многие свои приложения бесплатно - в частности, есть бесплатная версия Visual Studio, по функциональности мало отличающаяся от платной. Xamarin сделал программы, написанные на C#, конвертируемыми в другие операционные системы. Наконец, появились и другие редакторы C# и вообще среды .NET, к примеру Rider.
Кроме того, C# выгодно отличается от Java тем, что прошёл ISO-стандартизацию.
В общем, для большого, сложного проекта, который делает устоявшаяся фирма, я бы всячески рекомендовал С#.