First, the shell expands all unspecified * to match the names of files in the local directory.
After that, the shell runs a command findwith this list of file names.
Typically, you do not want the shell to perform "*" globing in the local directory. Typically, you wrap the find command to match file names in other directories.
The shell has several other things that it does before running the command. $ VARIABLE replaces one of them.