Where you go and how much time you spend on Oaxaca’s sun-drenched southern coast  depends on what you prefer. The prime resorts of Puerto Ángel  (and its neighboring villages Zipolite  and Mazunte ), the Bahías de Huatulco , and Puerto Escondido  each have their distinct charms. In all three, you will be able to enjoy beautiful beaches and good restaurants; but there the similarity ends.
Puerto Ángel  is heaven for those who prefer sleepy Mexico beach-village ambience. On the other hand, Puerto Escondido  has the spectacularly awesome breakers of Playa Zicatela , the most famous (and most challenging) surfing beach in Mexico; plenty of handicrafts shopping ; and a pair of lovely hidden coves, while the up-to-date Bahías de Huatulco  resort has the widest range of hotels, from modest to luxurious; several very good restaurants; and a small kingdom of sylvan forests that enfold its nine, coral-strewn blue bays.
If you have a week, you could spend it all at one place, spending half of your time on the beach, in the water, and by the pool. For more activity, in Puerto Ángel, spend two or three days on excursions, to the Centro Mexicano de la Tortuga in Mazunte , La Ventanilla  for bird- and crocodile-watching, maybe continuing for a day upcountry in Chacalapa  for a stroll to the waterfall, and continuing to the pine-scented sierra summit at San José del Pacifico.
In Huatulco, you can easily spend a day on a catamaran tour  exploring the Bahías, another day rafting or kayaking  the Río Copalita, and a third day visiting La Gloria Coffee Farm  in the tropical foothill forest.
In Puerto Escondido be sure to spend a day wildlife-viewing at sylvan Laguna Manialtepec , maybe continuing farther afield to explore Parque Nacional Lagunas de Chacahua , and finally heading uphill into the Chatino indigenous heartland to visit the Santuario de Nuestra Señora de Juquila  pilgrimage shrine.