So what's the difference?
Well, they are both Mexican towns on the Pacific coast.
Mazatlan is a colonial town with significant historic architecture in their Centro Historico. The new part of Mazatlan, the "Zona Dorada" is touristy, but the town is a working port with a major fishing fleet, as well. It has a much more diverse economy.
Puerto Vallarta is primarily a resort town. Tons more restaurants and bars in Puerto Vallarta, and a much more active nightlife.
Mazatlan is cheaper. And older.
Mazatlan is relatively flat, with desert-like flora.
Puerto Vallarta, being further south is tropical--much greener. The geography is more interesting, as the city backs up to high, lush green mountains. The contrast of the sea and the mountains is very pretty.
The beaches are different:
In Mazatlan, there is a major automotive roadway that hugs the beach, Avenida Claussen (yep, German immigrant). In order to get to the beach, at most points, you have to cross a very busy street. The malecon sidewalk is on the other (beach side). You take your life in your hands dashing across, dodging macho Mexican drivers.
In Puerto Vallarta, the beach is right there. In Old Town Vallarta, where I'm staying, the perpendicular streets dead-end at the beach. The beach, therefore is much more active.
Mazatlan has a much more active cultural life. Supposedly, the city offers about 200 performances throughout the year. Many take place in the city's historic jewel, the Angela Peralta Theatre.
Puerto Vallarta's culture is more often a tequila shots contest at the local cantina.
Cruise ships stop in both cities.
Mazatlan's population is around 350,000
Puerto Vallarta's population is around 177,000.