NoOb
Итак, я тоже пытаюсь изучать программирование. и на своем текущем этапе (я тоже новичок) я могу дать следующие советы:
1. Следует изучить очень основательно синтаксис языка. Без этого будет очень трудно писать программы в будущем - в любой среде разработки, для любой среды. Для изучения синтаксиса С начинающему достаточно прочитать книгу Кернигана и Ричи "Язык С". Керниган и Ричи - создатели языка С. Неважно, что программы там предназначены для консоли и Unix - их можно откпомпилировать и в Windows, важно понять хорошо синтаксис языка. В сети есть русский перевод старого издания этой книги, однако лучше найти более новое английское издание, и примеры выдирать оттуда, потому что они написаны более корректно и легко скомпилируются в Windows. Кроме того, там представлены некоторые алгоритмы, которые могут понадобится в будущем. Чтобы писать программы под Windows, изучать C++ не обязательно. Сама Windows написана большей частью на чистом C (!) Следует обратить внимание на книгу Богатырева "Программирование на С в Unix".
2. Начать изучать функции Windows API. Чтобы на первых порах не заморачиваться на программировании интерфейса, можно использовать их в консольных приложениях.
Рекомендую для изучения чистого API -книгу Пецолда (Petzold) " Программирование для Windows 95" неважно, что в заголовке указано Windows 95, потому что то, что там написано, применимо и к последующим версиям Windows вплоть до XP. Чем хороша эта книга - тем, что автор не заморачивается на объяснении среды разработки(!), а основное внимание уделяет сути программирования под Windows. Существует более новое издание той же книги "Программирование под Windows 98"
Есть справочник по Win API - размером 8 МБ, кому надо, могу дать ссылку, если найду.
Что я могу сказать по поводу изучения MS Visual C++ -- _большая часть_ возможностей для новичка просто не нужна, поэтому изучение интерфейса может быть потерей времени и не научит программированию, необходимо только знать, как в данной среде создавать проекты, файлы, компилировать, билдить, и исполнять программы) . Сперва нужно научиться программировать для _консоли_, после этого изучение программирования под Windows будет гораздо проще.
И вообще программы на С можно писать в блокноте и компилировать в командной строке следующим образом с использованием компилятора из MS VC++
Для консоли:
$file - имя исходника без расширения
Код:

cl $file.c /nologo /W3 /GX /O2 /D 'WIN32' /D 'NDEBUG' /D '_CONSOLE' /D '_MBCS' /YX /FD /c
link $file.obj kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WSOCK32.LIB /nologo /subsystem:console /machine:I386
Для windows:
Код:

cl $file.c /nologo /W3 /GX /O2 /D 'WIN32' /D 'NDEBUG' /D '_WINDOWS' /D '_MBCS' /YX /FD /c
link $file.obj kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WSOCK32.LIB /nologo /subsystem:windows /machine:I386