let allows variables to be declared by limiting their scope to where it is being used, and var defines a global or local variable in a function regardless of the scope of the block.