Would it make more sense to use the if and else if for this?
I think that, in this case, it would.
Does if statement run slower than switch case?
You could look at the resulting object code to answer that for yourself. You'd see that the resulting code is very similar, for a small number of cases. So, no, it isn't slower. After all, the correct block of code to execute still needs to be determined. Whether that decision is made using a switch statement and a bunch of cases, or a series of if/else if/else statements does not really matter.
why is the delay not a good idea? asking since I don't know why.
You won't be reading the remote during a delay(). If that matters...