In a double boiler, heat milk to room temperature (about 70 degrees). Stir in tapioca and salt and heat until small bubbles appear at the sides of the bowl, about 12 to 15 minutes (the mixture should reach 170 degrees).
Turn heat to the lowest possible setting, cover, and cook until the tapioca pearls start to soften and swell, about 45 minutes to 1 hour. Do not let the milk simmer or boil.
In a bowl, whisk together sugar and egg yolks. To temper the egg yolks, whisk in 2 tablespoons of the hot milk mixture, stirring constantly. Add to the milk mixture in the double boiler, increase heat to medium-low, and cook until the tapioca is thick, about 15 minutes.
Remove from heat, stir in the vanilla and let cool. Chill at least 30 minutes. The pudding will continue to thicken as it chills. Serve with whipped cream and a sprinkle of cinnamon sugar topping, if desired.
Video
Notes
Tapioca pearls: Soak the tapioca pearls in cool water overnight, at least 8 to 12 hours, to hydrate. Drain off the soaking water. Instant tapioca, minute tapioca, or "tapioca granules" will not work in this recipe; you want the real deal of "small pearl tapioca." Note: There isn't much standardization for white tapioca pearls, so they're available in a wide range of sizes. That's okay, because the pre-soaking step will compensate for any variations.
Cinnamon-sugar topping: Try 1 tablespoon granulated sugar + 1 teaspoon cinnamon. Mix and sprinkle over the whipped cream, and save the rest for cinnamon toast, oatmeal, or popcorn.
Yield: This recipe makes 4 cups of Tapioca Pudding, enough for 8 servings, 1/2 cup each.
Storage: Store leftovers in the refrigerator in an airtight container, ideally with a sheet of plastic wrap pressed right up against the surface of the pudding (to prevent skin from forming on top of the pudding).