Here, I will tell you how I cook basmati rice and its always fluffy, separated and just cooked.
First, wash the rice in cold water. Normally I fill up a pot to cover the rice, rub it very gently, without damaging grains. Then get rid of the water. Repeat 3 times.
After that soak rice in cold water for about 30-40 minutes. Change the water and cover the rice with fresh cold water, the way to covers rice by around one centimeter.
I normally adding at this stage salt (to taste) and a couple of tablespoons of olive oil for each kilo of rice. You can add any spices or seasoning.
Boil rice on high heat without lid, till you see ‘holes’ and water nearly all gone. Lower heat to medium and cover the pot with a lid. Cook for 4-5 minutes. Then, turn down the heat, lift the lid, fluff the rice with a folk or silicon spatula.
Then cover pot with a lid and leave rice to ‘rest’ for about 10 minutes. Done!