In a large bowl, combine the ground beef, breadcrumbs, finely chopped onion, milk, egg, Worcestershire sauce, Dijon mustard, garlic powder, salt, and black pepper. Mix gently just until the ingredients are combined. Avoid overworking the meat so the patties stay tender.
Divide the mixture into 6 equal portions. Shape each portion into an oval patty about 1/2 inch thick. Try to keep the patties even in size so they cook at the same pace.
Heat the vegetable oil in a large skillet over medium-high heat. Add the patties to the skillet and cook for 4–5 minutes per side, or until browned on both sides. They do not have to be fully cooked at this point because they will finish simmering in the gravy. Remove the patties from the skillet and set them aside on a plate.
Reduce the heat to medium and add the butter to the same skillet. Once melted, add the sliced onions and cook for about 5 minutes, stirring occasionally, until softened and lightly caramelized. Add the sliced mushrooms and cook for another 5 minutes, or until they release their moisture and begin to brown.
Stir in the minced garlic and cook for about 30 seconds, just until fragrant. Sprinkle the flour over the mushroom and onion mixture and stir well to coat everything evenly. Let the flour cook for 1–2 minutes to remove the raw taste.
Slowly whisk in the beef broth, making sure to scrape up the browned bits from the bottom of the skillet. Add the Worcestershire sauce and Dijon mustard, then bring the gravy to a simmer. Cook for 4–5 minutes, or until the gravy thickens.
Return the Salisbury steaks to the skillet and spoon the mushroom onion gravy over the top. Cover and simmer gently for 5–7 minutes, or until the patties are cooked through and heated all the way through.
Taste the gravy and adjust with salt and pepper as needed. Garnish with chopped parsley if desired, then serve hot with mashed potatoes, noodles, rice, or your favorite side dish.