We avoid hotels in general and especially airport hotels, but a few weeks ago we stayed at the Sheraton at MXP because our flight left at 6:30am and we were driving from a tiny town in far western Liguria and did not want to go into Milan or have returning the car be a pain in the neck. The Sheraton is "fine," I guess, but more than twice what we normally pay to stay anywhere. We had a hard time getting Google Maps to show us how to drive to the front door to drop off our bags. No refrigerator in the room to store our bottles of pesto. But mostly it was just the cost that irked us.
Before COVID, we actually enjoyed staying at an historic inn called Osteria della Pista (https://osteriadellapista.com/) in a town very near MXP. They have a shuttle to and from the airport that used to be free, maybe still is. We were coming from Torino by bus to the airport and the shuttle picked us up at the airport, we ate dinner at their pretty good restaurant, and the shuttle took us back to the airport in the morning. Nice hotel, nice people. So, someone could take the train or bus from Milan to MXP and take the same shuttle.
Depending on what time of day it is, you may be better off taking the train to MXP than either a bus or taxi so you don't get stuck in traffic.