Using a large, non-stick lidded wok or saucepan, heat the oil over a medium flame, add the cardamom, cinnamon, cumin and coriander seeds. Once the spices start to sizzle, add the onions and stir-fry until light golden brown.
Add the garlic and ginger, and cook for 1 min until it no longer smells raw. Add a splash of water if the garlic and ginger start to stick to the pan, then add the tomatoes and cook until soft.
Add 1 tsp salt, red chilli powder and the beef, turn up the heat and stir-fry until the meat is sealed on all sides. Reduce the heat to medium-low, cover loosely and cook for about 10 mins.
Turn up the heat and add the grated beetroots. Stir-fry for a few mins, then cover the pan, reduce the heat and cook for 1 hr 15 mins or until the meat is tender. Stir from time to time and add a little water if the curry becomes dry.
The finished dish should be a thick mushy curry with chunky, tender beef pieces and softened beetroots. Sprinkle with the coriander leaves and green chilli; add a squeeze of lime, and serve with naan or basmati rice.