Vous pouvez consulter les horaires des trains en Allemagne et aux alentours (la majeure partie de l'Europe est couverte) sur le site Web des chemins de fer allemands . De plus, tous les trains de nuit en Allemagne sont exploités par City Night Line ; leur brochure contient une carte. Malheureusement pour vous, aucun train de nuit ne traverse la Suisse occidentale en Allemagne.
De Milan, il y a un train de nuit uniquement pour Munich, selon la brochure City Night Line. Selon DB, il n'y a pas un tel train et vous devez changer à Vérone. Les chemins de fer italiens ont tendance à avoir des conflits avec les opérateurs ferroviaires des pays voisins), il est donc possible que les wagons de passage de Milan ne fonctionnent pas (ils rejoindraient normalement les wagons de Rome à Vérone et le train Rome-Munich est en marche). De Munich, 2h30 supplémentaires vous amènent à Stuttgart. C'est un voyage très détourné.
Si vous pouvez attraper Rome-Milan dans un endroit plus raisonnable comme Florence, Bologne ou Vérone, vous pouvez partir tard le soir et être à Munich à 6h30 et à Francfort à 10h00. C'est un peu un détour, partant tard le soir et arrivant trop tard pour une réunion matinale le lendemain.
Il y a plusieurs trains de nuit au départ de Bâle. Deux d'entre eux tournent vers l'est avant d'atteindre votre destination et ne prennent pas de passagers dans la vallée du Rhin. CNL 40478 quitte Bâle à 22h13 et passe à l'aéroport de Francfort à 3h39 et à Cologne à 5h43. Techniquement, cela répond à vos exigences.
Il n'y a pas de bonne option de train entre ces deux régions. Un train est susceptible de sortir moins cher qu'un vol plus un hôtel, mais le voyage en train prend beaucoup de temps et n'a pas d'horaire pratique.
Je ne sais pas s'il y a un bus de nuit pratique - si Rome2rio ne le trouve pas, cela peut signifier qu'il n'y en a pas. Eurolines a un bus quotidien depuis Milan depuis Francfort, mais c'est un bus de jour.