Dierença entre #define e uma variável - Introdução à Programação em C

Olá, galera da comunidade!

Estou com uma pequena interrogação na minha cabeça.

Dentro do primeiro jogo desenvolvido no livro (Jogo da Adivinhação) existe o conceito de “Números Mágicos”, que são aqueles números importantes no código, porém ficam jogados pelo código. Para solucionar ou organizar esse problema foi aconselhado que se usasse a diretiva #define.
E a partir disso eu fiquei me perguntando? Qual seria a diferença entre usar #define e uma variável própria para o propósito (que no caso seria o número de tentativas para o usuário poder acertar o número certo)?

Adorei o livro e a possibilidade de poder compartilhar essa dúvida aqui e espero que possam me ajudar.

Vlw!

Pelo o que eu entendi, o #define é uma constante, ou seja, não pode ser seu valor alterado, diferente das variáveis que podem ter seus valores alterados.

Site de referência: http://linguagemc.com.br/constantes-em-c-usando-define/