Hallo Pascal,
ich kann Dich sehr gut verstehen. Bei mir war es vor 25 Jahren nicht anders:
Märklin kam gerade mit seinem Digital-System raus und ich hatte einen neuen PC (mit DOS und Windows 3.11 falls das noch jemand kennt

). Also machte ich mich daran, eine eigene Software zu schreiben, damals gab es ja noch nix. Dabei lernte ich die Grafik-Programmierung, die Sprache C und alles was sonst nötig war. Hat allerdings gut ein Jahr gedauert, bis es wirklich nutzbar ware. Mein Programm nutze ich zur Zeit sehr wenig, da die Anlage zur Zeit nicht fahrbereit ist.
Da Du Module bauen möchtest, musst Du natürlich von der programmtechnischen Seite auch diese Modularität berücksichtigen. Da fällt mir im Moment nichts zu ein, außer dass es kompliziert werden könnte.
Zum Interface: damals hatte ich keine große Auswahl, heute hat man die Qual der Wahl ... Am einfachsten zu programmieren ist sicherlich die COM-Schnittstelle (seriell, RS232). Die kannst Du vom Programm wie eine Datei öffnen und beschreiben/lesen. USB kann auch so gehen, aber da habe ich keine Erfahrung unter Windows. Ein Interface mit LAN-Anschluß mag zwar elegant sein, ist aber etwas komplexer in der Programmierung (Stichwort Sockets).
Willst Du denn eine schöne Grafik dazu basteln? Wenn ja, dann empfehle ich Dir
Qt anstelle von MFC - ist wesentlich einfacher und vor allem Plattform-Unabhängig. Und da Du ja schon C++ kannst, ist es sehr einfach zu lernen.
So, das waren jetzt mal meine Gedanken aus der Sicht eines Programmierers, die anderen haben ja mehr zu dem Digitalsystem gesagt. Hoffentlich habe ich Dich nicht zu sehr verschreckt, bei Deinem Projekt kommt es auf eine gute Planung an und der erste Schritt war dieser Forums-Thread zum Ideen-Sammeln.