As any observant Jew is aware, there is a sentence towards the end of benching (grace after meals) which is said differently depending on what kind of day it is. On regular days it is said "magdil y'shuot malko" and on Shabbos, Rosh Chodesh, or other holidays it is said "migdol y'shuot malko."
Now why is that? What's so special about the difference of "increases the salvations..." to "tower of salvations..." Ok, well the difference between the words is that they come from different places in Tanach where the same verse is repeated in different contexts. In Psalms 18:51 it uses the word magdil, and in 2 Samuel 22:51 the word migdol is used.
So why do we switch and say the one from 2 Samuel on holidays? Well, we have a couple of answers. First is the apologetic answer:
The Rogatchover Gaon uses a line of reasoning from Gemara Shabbat 115-116b that says that one cannot learn from the Ketuvim (Writings) section of Tanach on Shabbos but one can learn from the Neviim (Prophets) section. So to honor this idea, we switch from the regular "magdil" is Pslams (in Writings) to "migdol" in 2 Samuel (in Prophets).
Wow, what a great answer - except - 1) saying bircat hamazon is hardly learning, 2) there are a number of other quotes from Writings in benching that are not switched and 3) that still doesn't explain why we say "migdol" on other holidays other than Shabbos for which the Gemara talks about.
So what's the real answer?
Rav Baruch Epstein (the Torah Temimah) says that this whole thing is just based on a mistake. Back in the day of original printing, the printer saw that it said magdil, but was knowledgeable enough to know that the whole verse was repeated in 2 Samuel and wrote "migdol" on the side in parenthesis, with the Hebrew letters bet-shin-bet next to it to indicate that the "migdol" form is found in Shmuel Bet, i.e. B'Shmuel Bet.
Later printers working off this copy misunderstood what the bet-shin-bet stood for, thought it may have dropped a Tuf, and thought it meant "B'Shabbat," i.e. "on Shabbat." Meaning that "migdol" was to be said on Shabbos. And if you say something on Shabbos it is likely that you should be saying it for other holidays as well.
So the whole reason for this custom is a silly printing misunderstanding and only stayed around because Judaism is that conservative.
Though, if we go even deeper than this, we could question why in 2 Samuel it is written "migdol" if it is quoting from Psalms in the first place. It should say "magdil" there too. Methinks that was also a copying error...
Update: See in the comments section how Gil Student shows why the Torah Temimah's answer cannot be correct.