Rinse the rice in cold water until the water runs clear, then drain it well and put it into a bowl. Stir in the yoghurt, add salt to taste and set aside for 30 minutes.
Put a kettle on to boil. Pound the saffron once or twice in a pestle and mortar until it crumbles.
Melt the butter with 1 tablespoon of oil in a large saucepan over a low heat. Add the bay leaves, cardamom, cinnamon, cloves and royal cumin and stir-fry for 1 minute. Stir in the rice, increase the heat to medium and stir-fry for 2-3 minutes.
Pour in 350 ml (12 fl oz) of boiling water and add the saffron.
Return to the boil, then reduce the heat to very low, cover the pan with a tight-fitting lid and simmer for 10 minutes without lifting the lid. Remove the pan from the heat and leave it for 8-10 minutes. Freshly cooked basmati is quite fragile. Letting it rest ensures fluffy, dry grains.
Meanwhile, heat ½ tablesooon of oil in a nonstick frying pan over a medium heat. Add the onions and stir-fry for 2-3 minutes. Reduce the heat, add a pinch of salt and continue stir-frying for 4-5 minutes until the onion is soft and lightly browned. If necessary, sprinkle a little water on the onions to prevent them burning.
Fluff up the rice with a fork and serve, garnished with the fried onion.
Tip: royal cumin (shahi jeera) is a rare variety of cumin seed grown only in Kashmir and is available in Indian shops. Stored in an airtight jar, it will retain its aroma for two years. If you cannot find it, you can use caraway seeds instead.