• Bring sugar and water to a boil in a large heavy saucepan over high heat, stirring with a fork until sugar is dissolved.
  • Boil, without stirring, washing down sugar crystals clinging to side of pan with a pastry brush dipped in cold water, until pale golden, 4 to 5 minutes.
  • Continue to cook, without stirring, swirling pan occasionally, until sugar turns a deep amber caramel, 1 to 2 minutes.
  • Remove from heat and carefully add cream in a slow stream (mixture will bubble and steam)
  • Return to low heat and cook, whisking, until smooth.
  • Stir together 1/2 cup milk and cornstarch.
  • Beat eggs, vanilla, and salt in another bowl.
  • Stir remaining 2 1/2 cups milk into caramel and bring to a simmer, whisking occasionally. Stir cornstarch mixture, then whisk into caramel.
  • Bring to a boil, whisking, and simmer, whisking, 2 minutes, then remove from heat.
  • Whisk about 1 cup hot caramel mixture into egg mixture until well blended, then whisk egg mixture back into caramel.
  • Continue whisking off the heat 1 minute.
  • Whisk 1/2cup hot caramel pudding into chopped chocolate, stirring until smooth.
  • Spoon chocolate pudding into 6 (8-oz) parfait glasses, then top with caramel pudding.
  • Chill until set, at least 3 hours but keep an eye on the caramel as it nears the end of cooking—it can go from deep amber to just plain burned very quickly.