В Microsoft Visual Studio есть определение, позволяющее указать минимальную платформу Windows, которую вы хотите поддерживать. Это WINVER.
Если вы компилируете с WINVER = 0x0501, то вы нацелены на Windows XP и выше.
Это означает, что вы не можете позвонить, например, Специфичные функции Windows 7, поскольку они будут определены только в том случае, если для WINVER установлено значение 0x0700 или выше.
В остальном, проверьте документы по разработке Windows, которые вы найдете на MSDN. Я заметил, что на практике у вас не возникнет никаких проблем, если вы не будете делать какие-то особые действия со службами Windows или с устройствами.