In a large pot, heat the oil over medium-high heat. Once hot, add the beef or lamb cubes. Allow them to brown, stirring occasionally. This caramelization creates deep flavors. Once browned, transfer the meat to a plate and set it aside, leaving the delicious browned bits in the pot.
Add the onion to the pot, stirring it around to pick up the flavorful bits left from the meat. Cook for about 6 to 8 minutes until the onion is soft, translucent, and just beginning to turn golden.
Next, toss in the celery, garlic, and ginger. Stir them for about two minutes, allowing their aromas to bloom and mingle with the onion.
Now, it’s time to add the diced tomatoes and tomato paste. Stir these in and let them cook for another couple of minutes, allowing the flavors to combine.
Sprinkle in the spices: cumin, coriander, turmeric, paprika, and cinnamon. Add the preserved lemon and harissa if you’re using it. Mix well and let it cook for a few more minutes to develop the flavors.
Return the browned meat to the pot, followed by the soaked and drained chickpeas and lentils. Pour in the broth, and stir everything together. Bring this mixture to a boil.
Once boiling, reduce the heat to low, cover the pot, and let it simmer for one hour. This allows the flavors to deepen and the ingredients to become tender.
After an hour, add the rice to the pot, cover again, and continue to simmer for another 30 minutes. Stir occasionally to ensure nothing sticks to the bottom.
As the soup cooks, you’ll notice the aroma filling your kitchen. After the rice has cooked, stir in the green and black olives, along with the chopped cilantro and parsley. Let it simmer for an additional 5 minutes to incorporate the fresh herbs.
Finally, season with salt and black pepper to taste. If you like your Harira spicier, feel free to add more harissa. Serve your Harira hot, garnished with some extra cilantro and celery leaves. Don’t forget to offer lemon wedges on the side for a bright finish!