Brown the Beef: In a large skillet over medium-high heat, cook the ground beef until browned, breaking it up as it cooks. Drain excess grease if needed.
Sauté Onion & Garlic: Add chopped onion and garlic to the skillet. Cook until softened, about 3 minutes.
Make the Roux: Push the beef to one side of the pan. Melt butter in the empty space, then whisk in the flour and cook for 1 minute until golden.
Prepare the Gravy: Slowly add beef broth and milk, stirring continuously to prevent lumps. Mix in Worcestershire sauce, salt, pepper, onion powder, garlic powder, and thyme. Simmer for 5-7 minutes until thickened.
Add Final Touches: Stir in sour cream (if using) for extra richness. Taste and adjust seasoning if needed.
Serve: Spoon the beef and gravy mixture over warm mashed potatoes. Garnish with fresh parsley and enjoy!