Для начала следует определиться с языком программирования. Их великое множество и у каждого свои преимущества!
C# лучше подходит для серьезных программ для Windows, но у языков C очень сложный синтаксис, особенно для начинающего, поэтому начинать с таких языков не рекомендую.
Лично мне нравится python - простой и универсальный язык программирования. Драйвера сделать не получится, но все остальное можно. Можно сделать программу (скомпилированную в исполняемый файл), можно сделать сайт, можно сделать приложение для андроид, можно сделать скрипт для автоматизации. Его главное преимущество в простом синтаксисе.
Интереснее программировать и изучать именно тогда, когда получается. С ним скорее всего появится интерес и по мере реализации проектов будете изучать те или иные технологии.
Лучше всего придумать себе пару проектов, сайтов или программ, которые хотите сделать, чтобы это было вам интересно. И старайтесь разработать их при помощи этого языка программирования. И не пугайтесь того, что иногда это будут очень маленькие шаги, сложные программы строятся не сразу, а как раз небольшими шагами.
Эта тема уже настолько разжевана, что даже стыдно должно быть, задавать такие вопросы. Учись гуглить, за этим процессом программисты тратят очень много времени.
Нет ответа на вопрос, зачем тогда отвечать?