Double quotation marks (" ") group words as a single argument to a command. Dollar signs and square brackets are interpreted (i.e. updated or evaluated) inside double quotation marks. When in doubt, use Quotes.

Double-quotes allow you to specify words that contain spaces. For example:

set x 88
set y 11
set z "$x + $y is [expr $x + $y]"

After these three commands are evaluated, variable z will be a text string:

88 + 11 is 99.

Everything between the quotes is passed to the set command as a single word. Command and variable substitutions are performed on the text between the quotes. The quotes themselves are not passed to the command. If the quotes were not present, the set z command would have received 6 arguments, which would have caused an error.