If depends on your problem statement.
Major Advantages of switch case :-
1>If you need more number of conditions need to be checked then always switch case will be better as in case of switch case it will directly jump to the index jump table , but if you have less conditions (< 5) need to be checked then if else is better.
2>switch case gives any way code clarity for reviewer
Constraint in switch case :-
1> Your switch variable (condition variable) has to be integer, but in if else any condition you can add.
If you interested how switch case creates jump table and directly jumps to the specified memory address to execute go through this wonderful article but basic assembly instruction need to be clear to refer.
http://www.codeproject.com/Articles/100473/Something-You-May-Not-Know-About-the-Switch-Statem