Книги нужно читать. Курсы нужно смотреть для закрепления уже после книг.
Вот курс, где я многое узнал уже после книги, так как это было первое серьёзное изучение языка и я много чего не увидел или не понял из книги.
Курс C# Base
Главная книга:
Язык программирования C# 7 и платформы .NET и .NET Core | Джепикс Филипп, Троелсен Эндрю
Разработка приложений ASP.NET Core
Книги (там нет книг по WPF и упоминания UWP):
Какие посоветуете книги по C# и смежным технологиям для начинающего?
Одновременно нужно во время изучения языка создать решение (Solution) и в нём создать проекты по каждой теме или нескольким темам, что позволит в будущем возвращаться к старому материалу, чтобы быстро вспомнить.
Грубый пример проектов в решении:
Изучение C# (.sln)
1. Переменные, циклы (.csproj)
2. Классы (.csproj)
3. Наследование (.csproj)
4. Делегаты и события (.csproj)
Все проекты нужно именовать по-английски в стиле CamelCase. Выше просто пример, чтобы было понятно.