Dresden is the capital of Saxony, and Saxony is Germanys Christmas country. Many of Germanys Christmas traditions come from there, like the Moravian Stars, all the handmade wooden Christmas toys like Schwibbogen, pyramids, smokers or nutcrackers, Stollen, Dominosteine, ...and the local gingerbread called Pulsnitzer Pfefferkuchen is better then the one from Nuremberg in my opinion.
Dresden is a great choice if you want to shop (only the Ore mountains, between Dresden and Prague, are better), but the main Christmas market called Striezelmarkt is less picturesque than Prague or Colmar, since Dresdens old town was leveled in WW2. Some of the smaller ones around the reconstructed Frauenkirche and the castle however are very nice and quite unique, with a medieval, a romantique, and a 1900 theme. You can read more about it here.
I wouldn't visit Dresden just for the Christmas markets... actually, I would visit no city just for the markets. But Dresden also offers world-class museums like the Green Vaults, the armory, the Old Masters or the porcelain collection. Since it's all very close together you could see one museum in the morning and one in the afternoon, and between them stroll through the old town, taste some food, drink some Glühwein etc..
It takes ~2h to get from Prague to Dresden, and the train ride is quite nice since you cross Saxon Switzerland. You have to sit on the right side to Dresden. If you start early and leave late it's possible to see most of Dresdens reconstructed old town, some museums and the major Christmas markets.
PS: if you are serious about shopping you need to visit the Ore mountains, where all the handmade wooden Christmas toys are made, but to get there you need a car.