Cook the lentils in 500ml water with the garlic clove for around 20 mins until the lentils are tender. Fish the garlic clove out, crush it and stir it back into the lentils with the butter. Season well. It should be spoonable like a thick soup – keep simmering if it’s not thick enough.
Put the carrots in a pan, just cover with water, bring to the boil and simmer until just tender, about 8-10 mins. Drain, then toss in the oil and garam masala. Tip into a frying pan and fry until the carrots start to brown, then add the nigella seeds, if using, and fry for another min.
Serve the dhal in a bowl with the yogurt and carrots, with the remaining spices and oil from the pan on top.