Разница между условными операторами if и case в программировании заключается в том, что в операторе case выполняется сопоставление с образцом с возможностью дополнительных условий на значения в сравниваемом, а в операторе if — только проверка условий. 1
В некоторых случаях оператор case работает быстрее, так как считывает одно значение из памяти вместо выполнения множества сравнений. 2