I just came across these words Speisekarte and Menü. Can they be used interchangeably? If not,why?
They can't be used interchangeably because they mean two very different things.
- A Speisekarte is the list of food items / dishes that are offered in a restaurant. Sometimes drinks are included, sometimes there is a separate Getränkekarte for beverages or Weinkarte for wines.
- A Menü is a sequence of dishes that are served at one meal. A typical Menü would contain three courses, but the number can be indicated by a numeric expression plus the term Gang, (= course) so a Dreigangmenü1 consists of three, a Fünfgangmenü of five courses.
Your set meal is actually a bit misleading:
You can "build your own menu" by choosing a sequence of dishes from the Speisekarte, e.g. a starter, a main dish and a dessert. A set meal is a pre-combined menu that is either offered by the restaurant (e.g. "Menü des Tages", often at a reduced price) or pre-ordered, especially if visiting the restaurant with a larger group where ordering individually might pose a logistic problem for the kitchen.
Don't confuse the German Menü with the English menu, the latter has both the meaning of "available items" and "sequence of dishes".
Also the menu on a computer is (confusingly, IMHO) called Menü in German...
1 also valid: Drei-Gänge-Menü and Dreigängemenü
A Speisekarte literally means dish card, and is list of dishes served by the restaurant. It is what an American would mean by the word menu.
A German Menü is something rather different. It represents a full "meal" of multiple courses. There can be several German Menüs listed on a single Speisekarte. The two words are not the same in German and cannot be used interchangeably.
Put another way, the word Menü is a "false friend" in German.