I recall hearing that Hanukkah (or maybe Purim) is a festival, rather than a holiday. Is this true? Is there a difference?
I don't think there's a formal English terminology what people would call "festival" vs. "holiday", but there certainly are distinctions.
The Jewish holidays such as Passover, Sukkot [booths], Rosh Hashanah (new year) and the like are spelled out in the Five Books of Moses. They all include "no-work" days. So you will not see an observant Jew at the office on those days.
Hanukkah and Purim are both post-Mosaic (Purim described in the Book of Esther, and Hanukkah in the Talmud), so they are known as holidays of rabbinic, rather than "biblical" force. Additionally, when they were instituted, they allowed people to work. So they're actually more minor holidays, and plenty of observant Jews do work those days -- though they have to handle a few rituals over the course of the day (often before or after work).
It's hard to answer this question concretely because "festival" is an English word and Jewish concepts are not generally categorized by English words. But I will attempt to answer this question as well as I can.
In my experience, with respect to Jewish observance, the word festival usually has one of two meanings. The first corresponds to the three pilgrimage festivals. These are Passover, Shavuot, and Sukkot. Going by that definition, neither Purim nor Chanukah would fall into the category of "festival."
The other usage of "festival" that I am aware of refers to Jewish holidays that are called "mo'ed" in Hebrew. The word "mo'ed" means appointed time. Purim is called a mo'ed so using that definition, one could call Purim a festival.
In addition to the answers above, perhaps I can summarize things in terminology. As stated, the term "festival" or "holiday" doesn't translate well into a specific Hebrew word, when discussing the "important" days mentioned in the Torah.
Let's view a key verse in the Torah that appears before the entire list of holidays. Focus on the bolded Hebrew terms more than the English, as the English almost always misses some nuance.
דַּבֵּ֞ר אֶל־בְּנֵ֤י יִשְׂרָאֵל֙ וְאָמַרְתָּ֣ אֲלֵהֶ֔ם מוֹעֲדֵ֣י יְהוָ֔ה אֲשֶׁר־תִּקְרְא֥וּ אֹתָ֖ם מִקְרָאֵ֣י קֹ֑דֶשׁ אֵ֥לֶּה הֵ֖ם מוֹעֲדָֽי׃
Speak unto the children of Israel, and say unto them: The appointed seasons of the LORD, which ye shall proclaim to be holy convocations, even these are My appointed seasons.
There are two terms used here - מועד and מקרא קדש. For purposes of this discussion, the first term is a superset of the 2nd term. I.e. - a מועד such as Passover, lasts 7 days, according to the Torah (I don't want to delve into why in Israel there are 7 and outside Israel 8; separate discussion.) Only the 1st & last days are מקרא קדש , meaning that work is forbidden meaning that work is forbidden. But the entire 7 days are called a מועד.
If you read all of Leviticus chapter 23, you will find a list of all the מועדים, which include:
- Shavuot (not mentioned by name, here)
- Rosh Hashanna )here, called Zichron Teru'ah)
- Yom Hakipurim (a.k.a. Yom Kippur)
Of these, the term מקרא קודש is used for:
- 1st day & 7th day Passover
- Rosh Hashanna
- Yom Hakipurim
- Succot (1st & 8th day)
So, what's excluded?
- Rosh Hodesh
- Chanukah & Purim (neither of which are mentioned in the Torah, anywhere)
It is interesting to note, that Tish'a B'av is called a מועד as per Eicha (Lamentations) 1:15. However, work is permitted (part of) that day, and it is not a Torah listed holiday.
There is another common term for "holiday" called יום טוב Yom Tov which means, literally "Good day". This term is commonly used to refer to one of the non-work days that I mentioned above. However, Purim, a day on which work is allowed is also called a יום טוב as seen in Esther 9:19. So, we see that this term does not necessarily imply that it is a day where work is prohibited.
The term Chag traditionally means "festival", whereas "holiday" doesn't necessarily have a strict Hebrew translation. Chagim in its strictest sense refers to Passover, Shavous, and Sukkos (Rosh Hashanah as well as seen in Talmud Rosh Hashanah on Tehillim 81:3).
Hannukah, Purim, Shabbos, etc. are not traditionally "chagim." I have even heard that technically it is incorrect to use the greeting "chag sameach" on Hanukkah & Purim, as they are not chagim.
With regards to holiday, if one wanted to try and use "yom tov" analogously, that would also be likely incorrect, as "yom tov" implies a cessation from melachot (halachically laborious activities). (see Talmud Bavli -- Megillah for this definition and also why Purim (called a 'yom tov' in the megillah itself is not included)).
This is probably why there is the common greeting of "Hanukkah Sameach (Happy Hanukkah", Frelicher Purim, etc.