Давайте возьмем два языка — базовый ЯП — C и какой-нибудь достаточно высокоуровневый, как то C#.
Что можно отнести к синтаксическому сахару, приятному для глаз, но особо ни на что не влияющему. А что относится к вещам реально сокращающим время разработки.
Вот если взять свойства. Вроде удобно. Но по сути ни на что не влияет — написать две функции — не сложнее.
Или взять возможность писать вместо save(Person* p) — p.Save() — удобно, но не особо на что влияет.
Взять пространства имен, когда можно вместо MyNamespace1_Person записать просто Person с переносом using MyNamespace1 — ну, наверное, чуть удобнее, но так ли уж?
Возможность наследования без необходимости вручную присваивать новые версии ссылок на функции — вроде чуть удобнее, но тоже не особо на что влияет.
Вот сборка мусора — уже да, тут просто другая парадигма получается. Уже и указатели не нужны и понимание работы с памятью не нужно. Частично это решается типа умными указателями.
Шаблоны — можно ли отнести к сильно полезному? Или же заменяется частично кодо-0генерацией?
Что бесспорно переводит на другой уровень — Expression Trees для ORM.