Garlic-Herb Beef Meatballs with Rice and Zucchini
A gentle breadcrumb panade keeps garlic-herb beef meatballs tender while rice simmers and zucchini browns in the same skillet.

This weeknight plate is organized around a useful bit of timing: start the rice first, then use its covered simmer to mix and brown the meatballs. The zucchini takes only a few minutes in the skillet after the beef is done, so it keeps its color and a little firmness.
A soft center starts with panade
Breadcrumbs, milk, and egg make a small panade that distributes moisture through the ground beef. Stir the mixture until it just comes together, then shape gently; the tender texture depends on avoiding a dense, tightly packed ball.
Let the rice cook in the background
A brief toast in butter gives the rice a nutty edge and lets the garlic perfume the pan before water goes in. Once covered at a low simmer, it needs little attention, leaving the cook free to shape and brown the meatballs.

Brown first, then cook gently
Give the meatballs room to develop browned patches before adding broth. A covered finish cooks the centers through without forcing the outside to darken further, and an instant-read thermometer gives a clear check for doneness.
Keep zucchini golden and firm
After the meatballs leave the skillet, use the same pan for the zucchini and spread the slices out so they sear instead of steam. If the skillet looks crowded, cook in two batches and combine them briefly at the end.

Finish with freshness
Fluff the rice only after its covered rest, then add parsley for a fresh herbal note. Lemon juice goes over the zucchini at the end, where its brightness cuts through the browned beef without softening the slices during cooking.
Garlic-Herb Beef Meatballs with Rice and Zucchini
Ingredients
- • 1 lb ground beef, preferably 85% lean
- • 1/3 cup plain breadcrumbs
- • 1/4 cup whole milk
- • 1 large egg
- • 3 garlic cloves, finely minced
- • 2 tbsp chopped fresh parsley, divided
- • 1 tsp dried oregano
- • 1 1/4 tsp kosher salt, divided
- • 1/4 tsp freshly ground black pepper
- • 1 1/2 cups long-grain white rice
- • 1 tbsp unsalted butter
- • 1 1/2 cups water
- • 1/3 cup low-sodium beef broth
- • 12 oz zucchini, sliced into half-moons
- • 2 tbsp olive oil, divided
- • 1 lemon
Method
Set up the ingredients
Rinse the rice until the water is mostly clear and drain it well. Cut the zucchini into half-moons about 1/2 inch thick, finely mince the garlic, chop the parsley, and keep the work area ready for shaping meatballs.
Look for: The rice is drained, zucchini pieces are evenly thick, and garlic and parsley are ready.
Soften the breadcrumbs
In a mixing bowl, stir the breadcrumbs, milk, and egg until evenly moistened, then leave the panade to stand for 3 minutes while it thickens.
Look for: The mixture is soft and cohesive with no dry breadcrumb pockets.
Cook the garlic rice
Melt the butter in a small saucepan over medium heat, stir in one-third of the minced garlic for 30 seconds, then add the rice and stir for 1 minute. Add the water and 1/2 teaspoon salt; bring to a boil, cover, reduce to low, and simmer for 15 minutes, then turn off the heat and rest covered for 5 minutes.
Look for: The garlic smells fragrant without browning, and after resting the rice is tender with no water pooled at the bottom.
Mix and shape the meatballs
Add the beef, remaining minced garlic, 1 tablespoon parsley, oregano, 1/2 teaspoon salt, and black pepper to the panade. Mix gently just until combined and shape into 16 even meatballs, about 1 1/2 inches wide.
Look for: The meat mixture holds together but is not packed tightly, and the meatballs are similar in size.
Brown the meatballs
Heat 1 tablespoon olive oil in a large skillet over medium-high heat. Brown the meatballs in a single layer, turning them carefully until several sides are deeply golden; work in batches if needed to avoid crowding.
Look for: The meatballs have browned patches on several sides and release from the pan when ready to turn.
Finish cooking the meatballs
Pour the beef broth into the skillet, cover, and simmer the meatballs over medium-low heat until the centers reach 160 F on an instant-read thermometer, about 4 to 6 minutes. Transfer them to a plate and tent loosely to keep warm.
Look for: The thermometer reads 160 F in the center of a meatball and the pan liquid is lightly savory.
Sear the zucchini
Pour off excess fat if needed, add the remaining olive oil to the same skillet, and raise the heat to medium-high. Add the zucchini in one layer, season with the remaining 1/4 teaspoon salt, and sear, turning once, until golden at the edges but still firm, about 4 to 5 minutes.
Look for: The zucchini has browned faces and yields slightly at the edge while its center remains firm.
Fluff and finish
Fluff the rice with a fork and stir in half of the remaining parsley. Cut the lemon and squeeze its juice over the zucchini, then taste the vegetables and add a little black pepper if needed.
Look for: Rice grains separate easily, and lemon brightens the zucchini without making it soggy.
Plate and serve
Spoon rice into shallow bowls, add the browned zucchini and warm meatballs, then scatter the remaining parsley over the top. Serve while the meatballs are hot and the zucchini still has some bite.
Look for: Each bowl has a balanced portion of rice, meatballs, and zucchini with parsley visible on top.



