Heat the vegetable oil in a large pot or Dutch oven over medium heat.
Add the chopped onions and cook until softened and golden brown, about 5-7 minutes.
Stir in the minced garlic and cook for another minute.
Add the meat cubes to the pot and cook until browned on all sides.
Stir in the diced tomatoes and tomato paste, cooking for about 3-4 minutes until the tomatoes start to break down.
Add the ground cumin, ground coriander, ground turmeric, ground cinnamon, ground black pepper, ground paprika, ground allspice, ground cardamom, and salt. Mix well to coat the meat with the spices.
Add the potato chunks, sliced carrot, and any other vegetables you like to the pot.
Pour in the beef or chicken broth and bring to a boil.
Reduce the heat to low, cover the pot, and simmer for about 45-60 minutes, or until the meat and vegetables are tender.
Tear the flatbread or naan into pieces and add them to the pot.
Simmer for an additional 10-15 minutes, allowing the bread to soak up the flavors and thicken the stew.
Remove from heat and let it sit covered for 5 minutes before serving.
Garnish with fresh cilantro or parsley.
Enjoy your meal!