Pound the steak thin and season with garlic powder, salt, pepper, and cayenne pepper.
Mix the flour with the seasonings in a shallow bowl and set aside. In another shallow bowl, whisk together the buttermilk and eggs until combined.
Dip each steak into the egg mixture first, then dredge it in the flour mixture until it is evenly coated.
Heat the oil in a large skillet over medium-high heat until it’s hot enough to fry, about 350°F (175°C). Carefully place each steak into the hot oil and fry for 2-3 minutes per side or until golden brown and cooked through. Transfer to a plate lined with paper towels to drain any excess oil.
To make the gravy, melt the butter in a skillet over medium heat. Once melted, whisk in the flour and cook for 1 minute. Slowly whisk in the milk while stirring continuously until it is thick and bubbly. Season with salt and pepper to taste. Serve the chicken fried steak warm with the gravy poured over top.