Season beef lightly with salt and pepper. Set aside.
In dutch oven, heat 2 tablespoons oil over medium heat. Add beef to hot oil and brown all sides, cooking approximately 2 minutes per side. Cook in batches as needed to avoid overcrowding dutch oven.
Transfer all browned beef to large bowl and set aside. Add remaining tablespoon oil to empty dutch oven. When hot, add onion slices, garlic, and ginger. Cook 2 to 3 minutes until fragrant.
Stir in cinnamon, cayenne pepper, curry powder, and chopped tomatoes.
Slowly stir in milk. Bring mixture to simmer.
Return beef to dutch oven. Add bay leaves. Bring mixture to boil, then reduce heat to low and cover dutch oven with lid. Simmer 2 hours or until meat is tender.
After 2 hours, uncover pot. Bring mixture to boil again, cooking until sauce has thickened. Season with salt and pepper as needed. Serve warm beef curry with rice, naan, and lime wedges.
