Heat oil in a Dutch oven over medium heat. Add onions and cook, stirring often, until fragrant and beginning to brown, 5 to 6 minutes. Add garlic and cook until fragrant about 1 minute.
Add ground cumin, coriander, cinnamon, cardamom and cayenne. Cook stirring until fragrant, for about 30 to 60 seconds. Add potatoes, water and salt; bring to a simmer. Cover and cook for 10 minutes. Add chickpeas, tomatoes and carrots; stir to combine. Bring to a simmer.
Reduce heat to low and simmer partially covered, stirring occasionally and adding 1/2 cup water, if needed, until the potatoes and the carrots are tender for about 30 to 35 minutes. Stir in cilantro. Serve with yogurt, if desired.
Nutrition Per serving: 264 Calories; 4 g Fat; 1 g Sat; 2 g Cholesterol; 51 g Carbohydrates; 9 g Protein; 10 g Fiber; 604 mg Sodium; 997 mg Potassium 3 Carbohydrate Serving Exchanges: 2 starch, 2 vegetable, 1 very lean meat.