We are planning a trip to Europe for two weeks towards the end of December into January. The dates aren't flexible because we have to work around school being out. Our trip will be Munich-Vienna-Prague-Switzerland and fly out of London the last day. Besides London, we have never been to any of these places. We are trying to decide if Prague would be a good place to spend either Christmas or New Years. We haven't booked anything yet so the order is flexible. Someone has also mentioned Budapest being interesting and close to get to. We plan on being at each place for about 3 days. My husband and I are both active people in our thirties and we will be bringing our son who will be sixteen. Thanks for feedback.
I think it is too much for just 14 days. I have been to all your planned destinations and my recommendation would be 3 full days Budapest, 3 days Prague, the rest for Switzerland (it's a country, not just a city) and London. Because you have already been to London you can give it just one night to be on safe side that you won't miss your plane home.
Two years ago my wife and I spent Christmas in Budapest. We spent 4 nights in Prague on the way to Budapest. We enjoyed our time in Prague but we were surprised with the number of tourists. Old town Prague and the Charles Bridge was jammed with tourists. It turns out that Christmas time is one of the “high” seasons in Prague. The Christmas Markets were pretty mundane and tourist trappy. We avoided some of the mob by taking a cooking class (very good) and photo tour which started beform dawn and thus avoided crowds. We went to several small music venues which we enjoyed. But Prague was mobbed.
We spent Christmas in Budapest. We quite enjoyed it. Not nearly the tourists as Prague. The Christmas Markets were oriented to towards the local residents and were not tourist trappy and were very good. We took another cooking class and I had a great photo tour. This was our second visit to Budapest and we would go again.