Источник: ГОСТ.
В ресторане клиентов всегда обслуживают официанты, в кафе это не обязательно.
В ресторане должны быть скатерти на столах, в кафе это не обязательно.
В ресторане с большой долей вероятности больший ассортимент блюд и зачастую можно высказать пожелания по приготовлению конкретного блюда, в кафе - врядли.
В ресторане обязана играть музыка, в кафе - не обязательно.
В ресторане вы можете обнаружить банкетный зал, чего в кафе не найдете.
В ресторане скорее всего более высокие цены, но это вилами по воде писано.
По большей части, различия кафе и ресторана - лишь формальности.
Макдональдс - ресторан. Официанты?
Одна девушка дала мне следующие объяснения на такой вопрос: кафе исключительно для насыщения, ресторан для эстетики и высокой кухни. Хотя это и весьма условно, доля правды в этом есть.