Pour water into a small mixing bowl. Sprinkle gelatin over the surface then stir it in. Let the mixture sit for 5-7 minutes until thickened. The gelatin will swell and become soft and rubbery.
While the gelatin is setting, heat the heavy cream, sugar and cardamom (if using) in a medium saucepan over medium heat. Stir occasionally, for 3-4 minutes until the mixture is hot to the touch (around 140-170°F) and the sugar dissolves completely. It should barely be at a simmer. Do not let it boil.
Remove from heat. Whisk in the gelatin until gelatin is completely dissolved and the mixture is smooth. Add the pistachio paste and whisk until smooth and fully incorporated.
Whisk in the milk, salt and almond extract (if using) until blended.
Set a fine-mesh sieve over a large glass measuring cup. Pour the mixture through the sieve for smoothest texture. Pour the mixture into 6 ramekins (or whatever individual containers you plan to serve them in).
Pour about ½ cup into each ramekin. Cover with plastic wrap and chill in the refrigerator until set, at least 6 hours or overnight.
To serve: Enjoy as is, with chopped pistachios and/or topped with cooled raspberry compote or any toppings you like! Add toppings right before serving.
Rapberry Compote (optional)
In a small saucepan, combine raspberries, sugar (start with 2 tablespoons), lemon juice and salt.
Place pan over medium-low heat. Simmer for 8-10 minutes if using fresh berries, or 12-15 minutes if using frozen berries, stirring occasionally. Frozen berries release much more liquid and need extra time to reduce and thicken properly. Cook until berries break down and the mixture thickens.
Once berries have broken down, mash lightly with a fork. This helps release pectin and help thicken the compote naturally.
The compote should look slightly syrupy and coat the back of a spoon when you lift it out of the pan. When you drag your finger across the back of the spoon, it should leave a clear line that doesn't immediately run back together. The mixture should move slowly when you tilt the pan (not watery or sloshing around, but not stiff either). It will look thinner than you think it should be, but remember it thickens significantly as it cools.If compote is still too watery after the cooking time (especially with frozen berries), increase heat to medium and let it bubble more vigorously for 3-5 additional minutes to evaporate excess liquid.
Taste and add the remaining tablespoon of sugar if needed, depending on the tartness of your berries.
Remove from heat and allow to cool completely at room temperature or in the refrigerator.
Video
Notes
Milk and heavy cream: For best results use full-fat whole milk and heavy cream. You can use 2% milk, but the final result won't be as rich. Gelatin: Gelatin is what thickens the panna cotta and gives it that signature wobbly texture. I use one packet of unflavored gelatin powder which is 7 grams or 2½ teaspoons. You can find unflavored gelatin packets in the baking aisle of most grocery stores.Don't have pistachio paste? Use ½ cup (60g) finely ground unsalted pistachios. Add them to the cream while heating in step 2, remove from heat, and let steep 15 minutes. Reheat the mixture to 140-170°F before straining - this is critical so the gelatin will dissolve properly. Strain through a fine-mesh sieve, then whisk in the gelatin, then add the milk, salt, and almond extract.Containers: Pour your panna cotta into any container you plan to serve it in. You can also pour it into jars, glasses, or bowls, whatever you like! I use 6-ounce (¾ cup) ramekins. This recipe makes 4-6 servings depending on how full you fill them.Chill time: Chill for at least 6 hours or overnight until the panna cotta is set but still has a slight wobble when gently shaken.Sugar: Reduce sugar to ⅓ cup (67 g) if your pistachio paste is sweetened. Use the full 1/2 cup sugar if using unsweetened homemade pistachio butter. Pistachio paste (also called pistachio spread) is a smooth paste made from ground pistachios. I use Pisti brand from Costco. If your pistachio paste is sweetened, reduce sugar to ⅓ cup. Almond extract (optional): I use a small amount (¼ teaspoon) of almond extract to bring out the pistachio flavor. Cardamom (optional): A small amount (¼ teaspoon) of ground cardamom adds warmth and makes the pistachio flavor even better. Raspberry compote (optional): If you make the raspbery compote, allow it to cool completely before serving. Use fresh or frozen berries. Toppings: Add whatever your heart desires! I like to use the raspberry compote and fresh raspberries and chopped pistachios. You can also use chocolate sauce, chocolate shavings, or edible dried rose petals!Serving: I serve the panna cotta directly in the ramekins. To turn them out onto plates, lightly oil the ramekins before filling. Once set, run a thin knife around the edge, dip the bottom of the ramekin in hot water for about 5 seconds, place a small plate on top, and quickly flip it. The panna cotta should slide out. Storage: Store panna cotta without toppings in the refrigerator covered with plastic wrap for up to 3 days. You can also make the raspberry compote in advance and store it in the fridge for up to 5 days. Add any toppings just before serving.