This has been discussed recently, do a search with keywords "punta cana puerto plata" and the search should result you all necessary information you need.
Brief summary:
There are two options:
1) via Santo Domingo (bus or driving)
2) flying from PUJ to POP
===============================
1) Take the road (bus) from Punta Cana via Higuey to Santo Domingo. From Santo Domingo take the road (bus) to Puerto Plata.
The bus from Punta Cana is Expreso Santo Domingo - Bavaro. Alternative options include Expreso Bavaro - Higuey with change of buses (non-complicated) Higuey - Santo Domingo.
To find out more do a search with keywords "Punta Cana Expreso Santo Domingo". This should result you in all info you need.
If you are driving just take this road: Punta Cana - Higuey - Romana - San Pedro (do not enter San Pedro, just take the exit to autopista about 10kms before SP, there are signs) - Santo Domingo (enter SDQ via Autopista Las Americas, continue on to 27 de Febrero "elevado").
In SDQ take bus from the Expreso Bavaro/Higuey stop at Parque Enriquillo to Caribe Tours or Metro bus terminal. Ride fare approx. RD$150
From Santo Domingo take Caribe Tours or Metro busses. Do a search with keywords "Santo Domingo Puerto Plata" and that should yild you all info you need.
If you are driving just continue 27 de Febrero (via "elevado") to Maximo Gomez. Make right turn and continue to Av. Kennedy (you will see a Banco Popular tower on your right, that is Kennedy). Make a left turn and continue via Av. Kennedy all the way through getting to Autopista Duarte, and keep on your way north, passing Bonao, La Vega, and Santiago.
After Santiago there is a crossroad (with roadsigns) directing you to Puerto Plata.
2) Second option is flying from PUJ to POP via a local connection. Price is approximately 200-300 USD round-trip. There is also a post about this, so do a search.