Cook the ground beef: In a large skillet over medium heat, cook ground beef, breaking it apart, for 5-7 minutes until browned. Drain excess fat if desired.
Sauté aromatics: Add butter, onion, and garlic to the skillet. Sauté for 3-4 minutes until onions are soft.
Make the gravy: Sprinkle flour over the beef mixture and stir for 1 minute. Gradually add beef broth, stirring to prevent lumps. Add Worcestershire sauce, salt, and pepper. Simmer for 5-7 minutes until thickened.
Prepare mashed potatoes: Peel and cube potatoes. Boil in salted water for 15-20 minutes until fork-tender. Drain, then mash with butter and milk. Season with salt and pepper.
Serve: Spoon mashed potatoes onto plates and top with ground beef and gravy.