01 - Heat the vegetable oil in a large heavy-bottomed pot over medium-high heat.
02 - Add the beef cubes and brown on all sides, working in batches if needed to avoid overcrowding. Remove the browned beef and set it aside.
03 - In the same pot, add the chopped onions. Sauté for 5 to 7 minutes until they are soft and golden.
04 - Stir in the minced garlic, grated ginger, and sliced green chilies. Cook for 2 minutes, stirring frequently, until fragrant.
05 - Add the curry powder, ground cumin, ground coriander, ground turmeric, cayenne pepper, garam masala, salt, and black pepper. Stir for 1 minute to toast the spices until they become fragrant.
06 - Add the chopped tomatoes and cook for 5 minutes, using a spoon to break them down into a sauce.
07 - Return the browned beef to the pot. Mix well to ensure the beef is thoroughly coated with the aromatic spice mixture.
08 - Pour in the coconut milk and beef broth. Stir to combine all ingredients and bring the mixture to a gentle simmer.
09 - Reduce the heat to low, cover the pot, and simmer for 1 hour and 15 minutes, stirring occasionally. Continue cooking until the beef is tender and the curry sauce has thickened to your desired consistency.
10 - Adjust seasoning as needed, adding more salt or spices if desired. Garnish generously with fresh chopped cilantro before serving the spicy beef curry.