Yes, you'll need to make some hard choices. I'll share a strategy I employ when I'm unsure... Pick a smallish area that seems loaded with good nearby options. Locate a town that could serve as a rail hub for those places - not necessarily the most interesting or lively town, but one with a central location. (Ideally, all your places lie within a local transit zone where day cheap day passes are available.) Then book a place that meets your basic needs near that town's station for the number of nights you think you need. Arrive at your base town with your prioritized options list in hand, but then play it by ear. Monday? Make sure the museum is open before setting out! Bad weather day? Hit the museums in the "big city." Save the dry-weather days for walking the old-town zones and the Christmas markets.
If you pick a good area, you'll run out of time before hitting all your options.
Nuremberg is an excellent train hub. But a good hub depends on your destinations, and sometimes a small town works just as well, or almost as well, or better. On separate occasions, smallish but well-positioned "Neustadt an der Weinstrasse" made for easy day trips to Bayreuth, Nuremberg, Amberg, Bad Windsheim, Iphofen and Würzburg on separate occasions. I wasn't, but I sure felt like I was the only foreign tourist to have ever set foot in this nice little place.
Near Stuttgart: I should suggest another small town for you, this one north of Stuttgart also on the Neckar River not far from Ludwigsburg (which you already mentioned.) Besigheim - an adorable old-world wine town - is a place I saw decades ago and now is on my bucket list for a return-trip.
Video in German - excellent, clearly-enunciated High German for your listening experience - but you don't need to understand it fully to get a grasp of what Besigheim is like, or to be impressed:
https://www.youtube.com/watch?v=M1xqGvinerc
If you were staying in either Stuttgart or Esslingen, you'd find it easy to visit both Ludwigsburg and Besigheim on one day. From Stuttgart Hbf the same train route gets you to both places... 17 min's to Ludwigsburg, 13 min's further to Besigheim. A VVS group day ticket (buy at station) covers the entire VVS network for about €20.
Other VVS tickets: https://en.vvs.de/tickets/3-day-ticket/
The VVS transit authority covers Stuttgart, Esslingen, Ludwigsburg, Besigheim, and Zuffenhausen (Porsche) and Stuttgart Neckarpark (Mercedes.) Fare zone map:
https://www.vvs.de/download/Tarifzonenplan.pdf
Look at the Baden-Wuerttemberg ticket for trips further out. It covers local and regional trains throughout much of southwest Germany, €30/day/2 adults. Map of covered rail lines:
http://www.agilis.de/wp-content/uploads/2016/11/Streckenkarte-BW-2013.jpg