Koshari is a hearty, vegan Egyptian street food dish made with layers of rice, lentils, macaroni, chickpeas, and crispy fried onions, all topped with a spiced tomato-vinegar sauce. It’s filling, deeply flavorful, and made with pantry staples.
Yields: 6-8 servings
Prep time: 30 minutes
Cook time: 1 hour
🌟 Why You’ll Love It:
- 100% plant-based
- Made with affordable pantry staples
- Bold layers of texture and spice
- A full meal in one dish
- A beloved Middle Eastern street food classic
Ingredients:
For the Rice:
- 1 cup Egyptian rice, or medium-grain rice
- 1 tablespoon vegetable oil
- 1/2 teaspoon salt
For the Lentils:
- 1 cup brown or green lentils
- 4 cups water
- 1/2 teaspoon salt
For the Macaroni:
- 1 pound small macaroni (elbow or ditalini)
- 1 teaspoon salt
For the Tomato Sauce:
- 4 tablespoons vegetable oil
- 4 cloves garlic, minced
- 1 teaspoon ground coriander
- 1/2 teaspoon red pepper flakes (optional)
- 2 (14.5-ounce) cans crushed tomatoes
- 1/4 cup tomato paste
- 1/4 cup vinegar (white or apple cider)
- 1 teaspoon sugar
- 1 teaspoon salt, or to taste
- 1/2 teaspoon black pepper
For the Crispy Fried Onions (Ward):
- 2 large yellow onions, thinly sliced
- 1/2 cup vegetable oil
- 2 tablespoons all-purpose flour (optional, for extra crispiness)
For the Spicy Vinegar Dressing (Shatta):
- 4 cloves garlic, minced
- 1/4 cup white vinegar
- Juice of 1 lemon
- 1-2 small hot chili peppers, finely chopped, or 1/2-1 teaspoon red pepper flakes
- 1/4 cup water
- Salt to taste
Step-by-Step Instructions:
1. Cook the Lentils:
- Place the lentils and water in a medium saucepan. Bring to a boil, then reduce heat and simmer for 20-25 minutes, or until the lentils are tender but not mushy. Drain any excess water and set aside.

2. Cook the Rice:
- Rinse the rice under cold water until the water runs clear. In a medium saucepan, heat the oil over medium heat. Add the rice and salt and cook for 1-2 minutes, stirring constantly, until the rice is slightly translucent. Add 1 1/2 cups of water, bring to a boil, then reduce heat to low, cover, and simmer for 15-20 minutes, or until all the water is absorbed and the rice is cooked through. Set aside.
3. Cook the Macaroni:
- Bring a large pot of salted water to a rolling boil. Add the macaroni and cook according to package directions until al dente. Drain well and set aside.

4. Make the Crispy Fried Onions (Ward):
- In a large skillet, heat the vegetable oil over medium-high heat. If using flour, toss the sliced onions with it. Add the onions to the hot oil in a single layer (work in batches if necessary). Fry, stirring occasionally, for 15-20 minutes, or until they are deeply golden brown and crispy. Be careful not to burn them. Remove the onions with a slotted spoon and place them on a paper towel-lined plate to drain. Reserve the onion-infused oil in the skillet for the tomato sauce.
5. Make the Tomato Sauce:
- Using the same skillet with the reserved onion-infused oil, heat it over medium heat. Add the minced garlic and cook for about 30 seconds until fragrant (be careful not to burn it). Stir in the ground coriander and red pepper flakes (if using) and cook for another 15 seconds. Add the crushed tomatoes, tomato paste, vinegar, sugar, salt, and pepper. Bring the sauce to a simmer, then reduce the heat to low, cover, and cook for 20-25 minutes, stirring occasionally, until the sauce has thickened slightly.

6. Make the Spicy Vinegar Dressing (Shatta):
- In a small bowl, whisk together the minced garlic, white vinegar, lemon juice, chopped chili peppers or red pepper flakes, water, and salt to taste. Set aside.
7. Assemble the Koshari:
- To serve, layer the cooked rice in bowls, followed by the macaroni, and then the cooked lentils. Spoon the warm tomato sauce generously over the top. Finish with a sprinkle of the crispy fried onions. Serve immediately with the spicy vinegar dressing on the side for those who like extra heat.

💡 Pro Tips
✔ Time-saver: Use canned lentils and pre-cooked chickpeas.
✔ Extra crispy onions: Double the amount and fry in batches.
✔ Vegan: Ensure pasta contains no eggs.
🍽 Serving Ideas
- With sides: Serve with pickled eggplant or cucumber salad.
- Meal prep: Stores well in the fridge for 3 days.
📊 Nutrition (Per Serving)
Calories: ~500 | Protein: 18g | Carbs: 90g | Fiber: 12g
🌶️ Variations
- Spicy: Add extra chili or harissa to the sauce.
- Protein boost: Top with boiled eggs or grilled chicken.
Enjoy your delicious homemade Egyptian Koshari!
THANK YOU for Visiting Savory Life Recipes!
👉 If you loved this recipe, please share it on Pinterest, Facebook, or Instagram!