Christmas markets usually last from the end of November until Christmas Eve, so you'll have plenty of time to enjoy all the festive fun.
However, some markets — such as the Christkindlesmarkt in Nuremberg — start earlier and run until early December.