The best is to fly into Zurich, because of the new tunnel, but you could also fly into Geneva or Milan. By train:
Zurich - Zermatt: 3 hours
Milan - Zermatt: 3.5 hours
Geneva - Zermatt: 4 hours
You can look up train timetables at www.sbb.ch
A rental car is not a good idea because Zermatt is car free and you will have to pay for parking, plus the train is usually faster than the car.
You can ski over to Italy on one pass, just make sure you buy the 'international' pass. It is slightly more expensive but it's totally worth it. For ski pass prices have a look at http://www.zermatt.ch/en/page.cfm/p_skipass
My favorite place to stay is Haus Theodul (www.theodul.ch),
which are serviced appartments right on the main street. If you are going with family I would recommend against the (youth) hostels. I would suggest renting an appartment: send an enquiry to email@example.com, tell them what you need, and they will send you a bunch of options. This is the Zermatt tourist office, they are incredibly helpful.
If you have more questions, you can also PM me.