Soak the cashews overnight or leave them soaking in hot boiling water for at least 20 minutes.
If you are using dried lentils, cook them in boiling salted water for 15-20 minutes. Drain and rinse with cold water the lentils and they will be ready for your dal.
Using a pot (preferably a cast-iron pot) add the vegetable oil. When hot, add the onion finely chopped and cook until it starts to soften.
Add the spice blend and keep cooking until fragrant (1-2 minutes). Finely chop or crush the garlic and ginger until it turns into a paste. Add into the pot and keep cooking for 2-3 minutes.
Add the tomato pure, stir until everything is well mixed, and leave simmering for 20 minutes.
Add the stock and the lentils and keep cooking for 15-20 more minutes, until you have a thick and creamy consistency. At this point you can take a bit of the dal and blend it. Transfer back into the pot and mix. This will give your dal a creamier consistency.
To make the cashew cream, drain and rinse with cold water the presoaked cashews and transfer into a blender jug. Add water until the cashews are covered and blend until you have a thick but smooth cream.
Serve the dal and top with cashew cream. Optionally you can add some freshly chopped cilantro and caramelized onions.