Heat the oil in a large heavy-bottomed pan over medium heat until it shimmers and begins to gently crackle.
Add the finely chopped onion and cook, stirring occasionally, until it becomes translucent and just begins to turn golden, about 5 minutes. The kitchen fills with a sweet, fragrant aroma.
Stir in the crushed garlic and cook for another minute, until fragrant and slightly softened, releasing a pungent aroma that spreads through the air.
Add the toasted cumin and coriander, along with a pinch of turmeric, to the pan. Toast the spices for about 30 seconds, stirring constantly, until they release a warm, nutty fragrance.
Stir in the diced potatoes, coating them evenly with the spice mixture. Cook for 2-3 minutes, allowing the potatoes to absorb the flavors and turn slightly glossy.
Pour in the crushed tomatoes and coconut milk, stirring well to combine all ingredients and scrape any flavorful bits from the bottom of the pan. Bring the mixture to a gentle simmer.
Reduce the heat to low, partially cover the pan, and let everything simmer gently for about 20 minutes. Stir occasionally, watching the sauce thicken and the potatoes become tender.
After 15 minutes, check that the potatoes are tender when pierced with a fork. If they are, stir in the frozen peas, spreading them evenly throughout the curry.
Cook uncovered for another 5 minutes, allowing the peas to brighten and heat through, and the sauce to thicken slightly. The vibrant green of the peas contrasts beautifully with the rich sauce.
Taste the curry and adjust the salt, adding a squeeze of lemon or a pinch of sugar if needed to balance the flavors. Remove from heat and let it rest for 5 minutes to allow the flavors to meld beautifully.
Serve hot, garnished with fresh herbs like cilantro if desired. Pair with rice or flatbread for a cozy, satisfying meal that’s perfect for slow, mindful cooking.