Yes, they're both correct. And both fine.
"Wait" is more indefinite than "wait + any modifier," so "wait a minute" is designed to make you stop or pause, and "wait for a minute" is more an invitation to delay doing whatever it was you were about to do.
That's probably the gist of the difference. A simple "wait" means something like "hold up" or "stop!" "Wait for" means "pause (a certain period-- a minute)" or "expect (someone, some signal to proceed)."
"Wait here." Stay, don't act, no specific indication of when or whether to proceed.
"Wait for me." Hold up a sec (if I'm running up behind you). Don't start without me (if I'm on the phone, calling from far enough away that you might have to wait for an hour).
"Wait for the light to change."
"Wait for an hour, that'll give them plenty of time to get ready for us."
"Wait an hour, then try the number again."
"I'm just gonna wait a couple days and see what happens."
"I'm not gonna wait all day."