This post may contain affiliate links. Please see our privacy policy for details.
This creamy orzo and meatball dinner comes together so easily in one pot! The best part? The homemade meatballs are so juicy and so tender!

- One pot convenience. Everything gets cooked in the same pot, from the meatballs to the sauce and even the uncooked orzo, making this incredibly convenient with less dishes to clean!
- Creamy comfort food. Orzo and meatballs pair so well together like chips and salsa, and makes for a fantastic, comforting meal. And as the orzo quickly simmers in the pot, it soaks up all the savory juices, herbs, and fat from the sauce and homemade meatballs.
- All the homemade meatballs. Homemade meatballs provide better flavor, quality, and texture, not to mention, it is also very cost-effective to make them right at home. And the best part? They can easily be made ahead of time (more on that below), substantially cutting down prep time for those busy weeknights.

- Prep the meatballs.
- Combine the ingredients. Combine the Parmesan, Panko, parsley, milk, egg, onion, garlic, salt, and pepper. Pro tip: let the mixture stand for 5 minutes, allowing the Panko breadcrumbs to fully absorb the liquids.
- Mix gently. Add the ground beef, then mix gently using a wooden spoon or clean hands just until combined. Do not overmix or the meatballs will be tough and dense.
- Shape the meatballs. Using wet hands, lightly roll the mixture into uniform meatballs (around the size of a golf ball), yielding about 24 meatballs.
- Sear the meatballs. Working in batches, sear the meatballs in a hot Dutch oven over medium heat until browned on all sides. Pro tip: the meatballs will finish cooking with the orzo.
- Build the sauce.
- Sauté the aromatics. Cook the onion and garlic in the Dutch oven until the onion is tender and translucent.
- Deglaze the pot. Stir in the dry red wine, lifting up the caramelized brown bits (fond) stuck to the bottom of the pot.
- Simmer. Stir in the browned meatballs, marinara sauce, and beef stock. Reduce the heat and simmer, covered, allowing the flavors to marry.
- Cook the orzo. Stir in the orzo, salt, and pepper, simmering until the orzo is tender and cooked through.
- Finish. Stir in the heavy cream, Parmesan, and basil.
- Prep the topping. Combine the cherry tomatoes, garlic, olive oil, parsley, salt, and pepper.
- Serve. Serve the meatballs and orzo warm, sprinkled with the tomato topping and shaved Parmesan.

Assemble the meatballs and place them in a single layer on a baking sheet lined with wax paper or parchment paper, avoiding any stacking or overlap. Wrap tightly with plastic wrap or foil, and place in the fridge for up to 24 hours.
Place the assembled uncooked meatballs in a single layer on a baking sheet lined with wax paper or parchment paper, avoiding any stacking or overlap. Freeze for 1 hour until solid.
Transfer the flash-frozen meatballs to an airtight, resealable freezer bag. Label, date, and freeze up to 1 month. Thaw overnight in the fridge for 12-24 hours prior to using.


Yes! You can simmer the orzo right in the sauce after browning the meatballs, stirring occasionally to prevent sticking.
Ground beef, ground turkey, ground chicken, or Italian sausage are all excellent options.
Orzo is a short-cut type pasta, similar in shape to a long grain of rice. Orzo can be added to one pot dishes, helping to thicken the dish naturally by releasing starch as it cooks in the sauce, yielding a richer, more velvety smooth consistency.
Place the uncooked meatballs on a baking sheet lined with wax paper or parchment paper, freezing for 1 hour until solid. Then transfer the meatballs to an airtight, resealable freezer bag, freezing for up to 1 month.
Use a drinkable dry, medium-bodied red wine such as Chianti or Merlot.
Absolutely! Stir in leafy greens such as baby spinach or kale during the last few minutes of cooking.
Store leftovers in an airtight container in the fridge for 3-4 days, gently reheating on the stovetop with a splash of water or stock (as the orzo will continue to absorb the liquid as it sits) until warmed through.
For the meatballs
- ¼ cup freshly grated Parmesan cheese
- ¼ cup Panko breadcrumbs
- 3 tablespoons chopped fresh parsley leaves
- ¼ cup whole milk
- 1 large egg
- 2 tablespoons grated white onion
- 2 cloves garlic, minced
- Kosher salt and freshly ground black pepper, to taste
- 1 pound lean ground beef, 90/10
- 2 tablespoons olive oil
For the sauce
- ½ medium sweet onion, diced
- 2 cloves garlic, minced
- ½ cup dry red wine
- 11/2 cups marinara sauce
- 11/2 cups beef stock
- 1 cup orzo pasta
- ⅓ cup heavy cream
- ⅓ cup freshly grated Parmesan cheese
- 3 tablespoons chopped fresh basil leaves
For the topping (optional)
- 1 cup halved small cherry tomatoes
- 1 clove garlic, minced
- 1 tablespoon extra virgin olive oil
- 1 tablespoon chopped fresh parsley leaves
For the meatballs
-
In a large bowl, combine Parmesan, Panko, parsley, milk, egg, onion and garlic; season with 1 teaspoon salt and 1/2 teaspoon pepper. Let stand 5 minutes.
-
Using a wooden spoon or clean hands, add ground beef, stirring until well combined. Roll the mixture into 1-to-1-1/2-inch meatballs, forming about 24 meatballs.
-
Heat olive oil in a Dutch oven over medium heat. Working in batches, add meatballs and cook, turning occasionally, until browned on all sides, about 8-10 minutes. Set aside.
For the sauce
-
Add onion and garlic, and cook, stirring occasionally, until translucent, about 3-4 minutes.
-
Stir in wine, scraping any browned bits from the bottom of the Dutch oven.
-
Stir in meatballs, marinara sauce and beef stock. Bring to a boil; reduce heat and simmer, covered, for 5 minutes.
-
Stir in orzo; season with salt and pepper, to taste. Continue to simmer, uncovered, stirring occasionally, until pasta is cooked through, about 8-10 minutes.
-
Stir in heavy cream, Parmesan and basil until heated through, about 2-3 minutes.
-
Serve immediately, garnished with tomato topping and additional Parmesan, if desired.
For the topping (optional)
-
In a large bowl, combine tomatoes, garlic, olive oil and parsley; season with salt and pepper, to taste.
- Use lean ground beef. Using 90/10 lean ground beef for the meatballs will release less grease and fat when the meatballs are simmered alongside the orzo, preventing an oily film from pooling on top of the sauce.
- Keep your hands wet. When forming the meatballs, keep your hands slightly wet to keep the mixture from sticking to your hands, ensuring perfectly round, smooth meatballs.
- Prep the meatballs ahead of time. The meatballs can be assembled up to 1 day in advance and placed in the fridge until ready to use. The uncooked meatballs can also be stored in the freezer for up to 1 month (once flash freezing), thawing overnight in the fridge.
- Make a double batch to freeze. Make a big batch of meatballs, doubling the recipe, to have a stash ready in the freezer to cut weeknight dinner prep to just a few minutes.
- Avoid overcrowding the pan. Cook the meatballs in batches, letting them cook in a single layer undisturbed until a nice crust is formed all around.
- Deglaze the pot. Lift up the caramelized brown bits (fond) stuck to the bottom of the pot – this will add maximum, deep flavor to the orzo and meatballs.
- Grab store-bought marinara. To cut down on prep time even more, use store-bought marinara sauce (such as Rao’s, our favorite).
- Add in leafy greens. This is an excellent recipe to sneak in leafy greens for those picky eaters. Spinach, kale, collard greens, swiss chard, or arugula are all excellent options.
- Add the cream slowly. Always add the heavy cream at the very end, pouring very slowly to prevent curdling. Substitute half and half for a lighter consistency.
- Store-bought meatballs also work in a pinch. Use your favorite store-bought frozen meatballs in a pinch, cooking to package instructions.
Did you make this recipe?
Tag @damn_delicious on Instagram and hashtag it #damndelicious!






