Си научит очень низкому уровню, но закомпостирует мозг этим низким уровнем. Так что не углубляться. После Си легче познать суть ООП в С++. Потому что в С++ классы - это те же структуры. Но там жуткие шаблоны, так что опять не углубляться. Потом надо прочистить мозги от Си, а именно попробовать какой-нибудь Ди. (гуглится D language) Java - не путать с JavaScript! - а также C# - можно понять, зная С++. Си и надстройка над ним С++ используется в разных программах и играх. Всякие там вэб-языки типа ЖаваСкрипта и ПХП - это только в интернете, а программу на них не напишешь.
С качественного учебника программирования. Потому как язык - не цель, а всего лишь инструмент. Такой же, как ручка/карандаш/фломастер для письма. Если имеешь навык письма, то не важно, чем именно писать. В последних изданиях учебника Вирта используется язык Oberon-07. И в настоящее время это наилучший вариант для начального обучения.