Prepare Nihari Masala by grinding all the ingredients together into a coarse powder. We will only use 2 tbsp of this masala. The remaining can be stored and kept in airtight container for upto 6 months.
In a large pot heat ghee and add onions. Fry them until golden brown. Add ginger garlic. Add Beef and sauté until it changes colour.
Add red chilli powder, Kashmiri red chilli powder, Turmeric, Ginger powder and salt. Mix and fry for a minute. Add splash of water to prevent spices from sticking to the pot. Saute the beef for around 5 minutes.
Add 6-8 glasses of water and bring it to boil. Turn the heat to low, cover and cook until the meat is tender. This should take anywhere around 4-6 hours. You can check the meat with knife, if it cuts easily it means its ready.
At this stage you will be able to see layer of oil separated on the top. Gently skim it and pour it into the bowl. Set it aside. Add fennel powder and prepared nihari masala (2 tbsp) into the nihari. Stir and cover, cook on low heat for another 30 minutes.
In a bowl add whole meal flour and make slurry by adding 1 cup of water. Pour the slurry in while stirring. Allow it to simmer on medium heat for 10 minutes. The gravy will thicken and once its bubbling its ready.
Dish out nihari in a bowl. Pour the oil over that was separated before. Garnish with julienned ginger, sliced green chillies and coriander/cilantro.
Serve it hot with lemon on side and naan.