We are first-time European travelers, needing to get from Prague to Florence on a Saturday in May. We think a daytime journey would provide interesting scenery, but the itineraries I've come up with are brutal, and seem to require bus travel, which we nix. Do we need to divide the trip into two segments, maybe overnighting someplace, perhaps Innsbruck?
If you go through Austria, you will probably need to go by bus from Villach. Or, maybe you are looking at the non-stop bus from Prague to Nürnberg. But there are all rail connections. They are still brutal.
You could leave Prague at 9:04 on a direct regional train that crosses the border at Furth im Wald and gets into Munich Hbf at 13:02. At 13:31, an EC leave Munich Hbf for Verona, getting in there at 19:07. You then take Italian trains to Florence. I see one connection using a regional train to Bologna and an IC Night (ICN) to Florence, arriving at 23:41.
That's almost 15 hrs of traveling. I recommend you break it up by taking the 6 hrs connection to Munich, spend the night, then take one of four direct EC connections to Italy. Depending on how much time you want to spend in Munich, there is another connection leaving Prague at 13:04, changing trains at Schwandorf, arriving Munich at 19:15. The 9:31 EC out of Munich the next morning goes all the way to Bologna (at 16:36).
You'll find all of these connections on the German Rail website. To see the Prague-Munich connections I mentioned, unclick the "Prefer fast connections" box.
The Czech rail fare from Prague to Domazlice, near the border is €8.36; to Furth im Wald, just inside Germany, might be a little higher. From Furth to Munich you can use a Bayern-Ticket (€28 for up to five people, €14 each for two). The Bayern-Ticket can be obtained online from the Bahn ticket store (unfortunately only in German). With purchase well in advance, you can get a Europa-Spezial Italien fare as low as €39 pP from Munich to Bologna. Finally, the fare for an Italian EuroStar from Bologna to Florence is €24. Total fare, €85,36 ($116).
Lee, Steve, thanks so much for your help.