In a large pot, heat the vegetable oil over medium heat. Add the finely diced onions and sauté them for about 5-7 minutes, or until they become transparent and lightly golden.
Once the onions are ready, stir in the minced garlic and grated ginger. Cook for another 1-2 minutes, stirring frequently until both are fragrant and softened.
Add the Madras curry powder, ground turmeric, ground cumin, ground coriander, and chili powder to the pot. Mix well with the onion mixture and toast the spices for about 1 minute.
Add the beef cubes to the pot, making sure to brown each piece on all sides for about 5-6 minutes.
Pour in the canned chopped tomatoes and stir everything together, allowing the mixture to simmer for about 10 minutes.
Introduce the coconut milk to the pot along with the slit green chilies. Mix thoroughly and bring to a gentle simmer.
Season with salt to taste. Cover the pot and reduce the heat to low, letting it cook for 1.5 to 2 hours.
Once the beef is fork-tender, adjust the seasoning if necessary and let the dish sit for a few minutes off the heat before serving.
Notes
Serve with basmati rice or naan, and garnish with fresh coriander leaves.