Practically any major Canadian city could dual-host, with Vancouver and Calgary of course being the best-placed to do this because of the nearby mountains. Most western US cities also could do this, with the best for this IMO being Denver, Seattle (both in the Rockies), Boston, New York and Atlanta (all near the Appalachians). Los Angeles is too hot and not many ski areas nearby (San Francisco also has this problem) and Salt Lake City and Portland are too small. Toronto hasn't got any huge mountains near by, but there are several excellent ski areas in Ontario's Muskoka region, so its not impossible. Ottawa or Montreal has Mont-Tremblant to the north for this.
Most major cities in Central Europe could also do this, with Lyon, Munich, Venice, Milan, Berne, Vienna and Belgrade being the best possibilities. Pretty much any major city in Scandinavia could also do it, of course. Barcelona and Zaragoza could pull it off with the help of Pyrenees Mountains. In the British Isles, one could see Edinburgh or Glasgow as possibilities, but not easy ones.
In the Middle East, really the only city I can see making it work is Tehran, because its the only one with major mountains nearby. North Africa and Arabian Peninsula cities of course have no real chance. Most of India is too warm climate for the winter games. There are a number of major cities in China which could do it, as well as ones in Japan and Korea. Several major cities in Latin America also qualify.