Cook the Potatoes:
Place peeled, cubed potatoes in a large pot of salted water. Bring to a boil and cook until fork-tender, about 15–18 minutes.
Mash the Potatoes:
Drain potatoes and return to the pot. Add butter, garlic paste, warm milk, and shredded cheese. Mash until smooth and creamy. Season with salt and pepper to taste. Set aside.
Prepare the Beef Filling:
In a large skillet over medium-high heat, heat olive oil or butter. Add ground beef and cook until browned, breaking it apart as it cooks. Drain excess fat if needed.
Add Aromatics and Flour:
Stir in diced onion and minced garlic. Cook for 2–3 minutes until softened. Sprinkle flour over the meat and stir well to coat.
Make the Gravy:
Slowly pour in beef broth and Worcestershire sauce while stirring. Continue cooking until the mixture begins to thicken into a gravy.
Add Veggies and Seasoning:
Stir in the frozen mixed vegetables, garlic powder, onion powder, thyme, smoked paprika, salt, and pepper. Simmer for 5–7 minutes until vegetables are tender and mixture is thickened.
Assemble the Casserole:
Preheat oven to 400°F (205°C). Spread the beef mixture evenly in a 9x13-inch baking dish. Spoon mashed potatoes over top and smooth out evenly. Use a fork to create texture if desired.
Top and Bake:
Sprinkle additional cheese over top (optional). Bake uncovered for 20–25 minutes, until the filling is bubbly and the top is golden brown. Broil the last 2–3 minutes for a crisp top if desired.