This creamy semolina pudding, traditional to Parsi cuisine, gets its velvety texture from gentle, constant stirring and a careful eye on the heat; it should bubble when cooking over high heat but not come to a full boil. Sweetened condensed milk—writer Sabrina Medora's grandmother's riff—and a simple whole milk–and–egg mixture thicken the pudding and add a creamy, sweet flavor.

Ravo Recipe
Ravo. Photo: Eva Kolenko
Active Time:
1 hrs
Total Time:
3 hrs
6 to 8


  • 1 teaspoon neutral oil (such as canola)

  • 1 cup slivered almonds

  • .3333 cup raisins (about 1 3/4 ounces)

  • 8 cups whole milk, divided

  • 2 large eggs, beaten

  • ½ cup cold salted butter

  • ¾ cup fine semolina flour (such as Bob's Red Mill) (about 4 1/4 ounces)

  • 1 (14-ounce) can sweetened condensed milk

  • 1 tablespoon vanilla extract

  • 1 teaspoon freshly grated nutmeg, or more to taste


  1. Heat oil in a medium skillet over medium-low. Add almonds and raisins, and cook, stirring constantly to avoid burning, until almonds are golden brown and fragrant and raisins are softened, 4 to 5 minutes. Remove from heat. Transfer mixture to a plate lined with paper towels; let cool 30 minutes.

  2. Meanwhile, whisk together 2 cups whole milk and eggs in a medium bowl; set aside. Add butter to a wok over medium-low gas heat or a Dutch oven over medium-low electric heat, and cook, stirring often, until melted, 2 to 3 minutes. (Do not let butter brown.) Stir in semolina until well combined and butter is absorbed. Gradually stir in remaining 6 cups whole milk, stirring constantly to prevent lumps from forming. Increase heat to high, and cook, stirring constantly, until mixture just begins to bubble around edges, 10 to 15 minutes.

  3. Stir in sweetened condensed milk, and cook, stirring constantly, for 10 minutes while gradually reducing heat to medium-low. Slowly drizzle in egg-and-milk mixture, stirring constantly to avoid curdling. Cook, stirring constantly, until mixture is smooth and thick, about 10 minutes.

  4. Stir in vanilla and nutmeg. Cook, stirring constantly, over medium-low until mixture has thickened slightly more, about 10 minutes. (Mixture will continue to thicken into a porridge-like consistency as it cools.) Transfer ravo to a large bowl, and cover with plastic wrap, pressing directly onto surface to prevent a skin from forming. Let cool completely at room temperature, about 2 hours. Just before serving, sprinkle ravo with almond-raisin mixture. 

Make Ahead

Almond-raisin mixture may be covered and chilled up to 1 day. Ravo may be covered and chilled up to 1 week. Once chilled, serve ravo cold.

Related Articles