Maiale al latte is a northern Italian braise where a boneless pork loin simmers in whole milk until the meat is tender and the liquid reduces into a golden, slightly curdled sauce with a nutty, sweet flavor. It takes about ten minutes of real work and less than two hours on the stove. The main reason to make it: pork loin is an easy cut to overcook, and this method makes that nearly impossible.
Before you start
Two things actually matter here. First, the sear. Get the pan genuinely hot before the pork goes in, and don’t move the meat until it releases cleanly — a proper brown crust on both sides gives the finished sauce its color and depth. Second, heat control during the braise. Once the milk is in, you want the lowest simmer your burner can manage — just the occasional lazy bubble. Too high and the milk scorches on the bottom before the pork has time to turn tender. If your stove runs hot, a heat diffuser under the pan solves this completely. An instant-read thermometer is worth using here: pull the pork at 145°F / 63°C and it will be juicy all the way through.
About the ingredients
- Whole milk: Use full-fat. Lower-fat milk has less protein and fat, so the sauce won’t develop the same golden curds — it tends to stay thin and pale instead.
- Bay leaves: Optional but worth adding if you have them. They give the braising liquid a mild herbal background that kids generally don’t notice but adults appreciate. Skip the garnish — not worth the extra dish.
- Flour for thickening: Only needed if the sauce is still very watery after the pork comes out. A gluten-free plain flour blend works the same way here.
- Lemon zest or sage: A strip of lemon zest added to the milk is the easiest way to add a little brightness without changing the character of the dish. One strip is enough — more and it starts to taste like something else entirely.
Common problems and fixes
- The sauce looks broken and grainy: That’s correct. The curdled, golden texture is what you’re after — it’s not a mistake. Stir it together with a wooden spoon and it comes into a cohesive, rustic sauce.
- The milk is boiling hard and reducing too fast: Turn the heat down immediately and partially uncover the pan to let steam escape without losing too much liquid. Add a splash more milk if needed to keep the pork mostly submerged.
- The bottom of the pan is scorching: Lift the pork, scrape the bottom gently, reduce heat further, and add a little milk. A heavy Dutch oven holds heat more evenly than a thin pan — it’s worth using if you have one.
- The pork is done but the sauce is still very thin: Remove the pork to rest, then simmer the sauce uncovered on medium-low for 5–10 minutes before adding flour if still needed. Letting it reduce naturally gives better flavor than relying on flour alone.
- The meat is slicing unevenly or falling apart: This usually means it went a little past 145°F, which can happen if the burner ran warm. It’s still perfectly good to eat — just serve it in thicker chunks rather than slices and spoon plenty of sauce over the top.
Leftovers and make-ahead
Store sliced pork with its sauce in an airtight container in the fridge for up to 3 days. The sauce thickens considerably when cold — reheat gently in a covered pan over low heat with a splash of milk stirred in, which brings it back to a spoonable consistency. For the freezer, portion the pork and sauce together and freeze for up to 2 months; thaw overnight in the fridge before reheating the same way. This dish is genuinely better the next day — the pork absorbs more of the sauce as it sits, so making it the evening before a family dinner is a smart move rather than a compromise.
Italian Pork Loin Braised in Milk (Maiale al Latte)
Equipment
- Large heavy-bottomed pan or Dutch oven with lid (at least 5 quarts / 4.7L)
- Tongs for turning the pork loin
- Sharp carving knife
- Wooden spoon
- Instant-read meat thermometer
Ingredients
- 1 medium boneless pork loin roast about 2-2.5 lbs
- 1 large onion roughly chopped
- 1-2 tablespoons extra virgin olive oil
- 6 cups whole milk full-fat, or enough to nearly cover the pork
- 2 small bay leaves also called laurel leaves, optional
- 1 teaspoon fine sea salt plus more to taste
- ½ teaspoon freshly ground black pepper plus more for serving
- 1 teaspoon plain flour optional, for thickening the sauce; gluten-free if needed
Instructions
- Heat 1-2 tablespoons of extra virgin olive oil in a large heavy-bottomed pan or Dutch oven over medium heat. Add the roughly chopped onion and cook, stirring occasionally, for 5-7 minutes until softened and lightly golden.
- Push the onion to the edges of the pan. Season the pork loin all over with salt and pepper, then increase the heat to high. Sear the pork for about 5 minutes until deep golden brown on the bottom.
- Using tongs, turn the pork and sear for another 5 minutes until browned on the second side.
- Reduce the heat to the lowest setting. Slowly pour in the whole milk — it will bubble vigorously at first. The milk should nearly cover the pork; add a little more if needed.
- Tuck the bay leaves into the milk. Cover the pan with a lid slightly ajar and simmer on the lowest heat for 1 hour 30 minutes to 1 hour 45 minutes, turning the pork every 30 minutes. The pork is done when it reaches an internal temperature of 145°F / 63°C and feels very tender when pierced with a fork.
- Transfer the cooked pork to a cutting board and tent loosely with foil to rest for 10 minutes. If the sauce is still thin and watery, continue to the next step.
- If the sauce needs thickening, sprinkle in 1 teaspoon of plain flour (use gluten-free flour if needed) while whisking constantly over medium heat. The sauce will thicken within 1-2 minutes.
- The milk will have reduced into golden, caramelised curds in a creamy sauce. Use a wooden spoon to break up any large lumps and stir everything together into a cohesive sauce. This rustic, curdled texture is exactly what you want — it's the hallmark of authentic maiale al latte.
- Taste the sauce and season with salt as needed. Stir well.
- Carve the rested pork into ½-inch (1cm) slices. Arrange on a warm serving platter, spoon the milk sauce generously over the top, and finish with freshly ground black pepper. Serve immediately.
Notes
Notes
- Storage: Refrigerate sliced pork in its sauce in an airtight container for up to 3 days. The sauce thickens further when cold — reheat gently with a splash of milk.
- Freezer: Freeze portions with sauce for up to 2 months. Thaw overnight in the fridge before reheating.
- Make-ahead: This dish actually improves overnight as the pork absorbs more sauce flavour. Braise the day before, slice and reheat in a covered pan over low heat.
- Pro tip: Do not skip the initial high-heat sear — browning the pork builds a Maillard crust that adds depth to the final sauce and prevents a pallid, boiled appearance.
- Substitution: Bay leaves work identically to laurel leaves. For extra depth, add a strip of lemon zest or 4-5 sage leaves to the braising milk.
Nutrition
Your questions, answered
Will kids eat this? The sauce looks strange.
Most kids take to it well once they try it — the sauce is mild, slightly sweet, and not spicy at all. The curdled texture looks unusual but tastes more like a creamy gravy than anything sour; serving it spooned generously over sliced pork rather than on the side helps.
Can I use a pork tenderloin instead of a loin roast?
No — tenderloin is much smaller and cooks far faster, so it will be overcooked and dry long before the milk sauce has time to develop. Stick with a boneless pork loin roast in the 2–2.5 lb range for this recipe.
My milk curdled into big lumps — did I do something wrong?
Not necessarily. Some separation is normal and expected; it’s the whole point of the dish. If the curds are very large, break them up with a wooden spoon and stir — the sauce will come together. The only time to worry is if the bottom has scorched, which gives a bitter flavor that doesn’t stir out.
If you liked this one
- Authentic Roman Carbonara
- Elegant Chicken Marsala with Mushrooms and Marsala Wine
- Crispy Italian Almond Biscotti
- Creamy Fettuccine Alfredo



















































