First, melt the butter in a large (6 pint/3.5 litre) saucepan, then add the onions and cook until they're a golden brown colour.
Now place the cardamom, cumin, fennel and coriander seeds in a small frying pan to dry-roast - this will take 2-3 minutes. As soon as the seeds start to jump, tip them into a mortar and crush them finely, then add them to the onions. Now add the marrow or courgettes, potato and tomatoes. Season well, then let the vegetables cook gently, covered, until soft - about 20 minutes.
Next, when the vegetables have cooled a little, put them into a blender and reduce to a puree. You will need to do this in more than one batch, so a large bowl to put each batch in is helpful here. Then pour the puree back into the saucepan and stir in the cooked rice, together with the stock. Re-heat gently, cook for about 5 minutes more, then serve with some crisp croutons sprinkled in each bowl. You can also watch how to cook perfect rice on our Cookery School Video on the right.