Since you want to approachMilan from Lugano, you do not have to be concerned about the closure on the Domodossola route.
Have a look at the Swiss rail map:
https://myswisstravelpass.com/Map2024_swissasap.pdf
Your route would be Zurich to Interlaken —-Lauterbrunnen (Gimmelwald or other)—-Interlaken Ost—-Luzern—-Lugano—-Milan. You do not need to be concerned with “express” vs local trains in Switzerland; just take what the SBB.ch schedule offers that suits you. From Zurich to Interlaken Ost it will be an IC (intercity) train unless you want to go by the slower, scenic route via Luzern. No point in that as you will travel that way later. There is a direct train from Zurich to Interlaken Ost every 2 hours; otherwise you change at Bern.
From Interlaken Ost to Luzern there is only one train possible.
From Luzern to Lugano there are IC trains that go direct every 2 hours. Otherwise there are regional trains with a change along the way (perhaps to an IC train coming from Zurich).
There is no advantage to buying tickets in advance for any of these trains within Switzerland, unless you are looking for a SuperSaver fare. These are inflexible tickets and you may or may not want to commit to a particular train.
In any case, you do not need to decide on the train tickets yet. You will have no trouble getting to Milan, so go ahead and buy your plane tickets into Zurich and out of Milan if that is what you want to do.