That is right, thanks I corrected it in my post, thanks. The {print; next} is there, otherwise a line would get printed twice if there is a double match, for example..
Every grep suggestion thus far in this thread (including the OP's) assumes that it is safe to evaluate file1 in a regular expression context. If file1 does not contain regular expressions (very likely), and if its literal text may contain regular expression metacharacters (possible), that assumption would be unjustified and could yield erroneous output.
The assumption may be valid (probably is), but given the miniscule data sample and lack of specifics in the OP, I thought it prudent to mention it.
I agree, and with these grep suggestions there is then also sensitivity to spacing in file1 (one leading or trailing space somewhere in the file will influence the result, which may not be desirable) so generally I would prefer the awk approach.