Como o JoseQuintas falou, gerar aplicativos usando o MSVC com certeza fará a instalação de seu aplicativo ter de baixar toneladas de coisas imprevistas.
...Ou tô errado?
O post do Rochinha ficou sem resposta, aproveitar pra responder:
C++ só depende do run-time de C++, é relativamente pequeno, até faz parte do Windows.
O problema é que cada Windows tem uma versão de run-time.
Se usar msvc 2010, roda direto no XP sem instalação, mas pode precisar instalar run-time pra Windows 8 e acima.
Se usar msvc 2015, vai precisar instalar run-time no XP, mas não no Windows 8, e não nas primeiras versões de W10.
Se usar msvc 2017, vai precisar instalar pra quase todos, menos os últimos W10.
E tem run-time pra 32 e 64 bits.
O ODBC MySQL sofre desse efeito, dependendo do ODBC, precisa instalar um run-time diferente.
O problema não é o tamanho, mas precisar da instalação.
Pode ser que precise diretos de administrador, pode ser que a Microsoft retire do mercado, pode ser que um atual não funcione em Windows anteriores.
A parte chata de tudo isso, dos compiladores C é a seguinte:
O que obriga a atualizar compiladores C e código fonte, não é o Harbour, é o WINDOWS.
A cada versão de Windows, há alterações em rotinas do Windows.
Os compiladores C vém com todos os #defines pra Windows, então só atualizando os compiladores pra trazerem as novidades do Windows.
E diversas vezes exigem alterações extras no código fonte.
O Borland C 5.5 é do tempo do Windows 98, talvez XP.
O Windows Vista, veio depois do Windows XP, com novidades nas APIs do Windows.
Existem rotinas do Windows que só funcionam do Windows Vista pra frente, mas não funcionam no XP.
Uma simples: pushbutton com imagem + texto. Isso não existia no XP, isso é do tempo do Vista pra frente.
Outra simples: LoadImage() do Windows, com redimensionamento automático de imagem
Só estas duas, já pode fazer diferença de velocidade em ambiente GUI.
Mas não é só isso: pode ser que pra ter um recurso novo, os parâmetros do Windows foram modificados, e a linguagem antiga não foi atualizada.
Infelizmente, em Windows, ficar atualizando faz parte do desenvolvimento.
Talvez pare agora com Windows 10, mas é bem provável que não.
Ah é, ia esquecendo...
Fora isso, eles vão descobrindo formas do próprio compilador fazer checagem de erros de programador.
Os novos compiladores fazem mais checagens pra evitar erros de programador.
A maioria dos problemas de fontes de LIB não compilarem com o mingw 7.1 é por erros de programador.
Já no BCC... passa qualquer erro.... rs..... até função repetida ele aceita.