Food safety reminder: Follow safe food-handling practices and use a food thermometer to verify safe internal cooking temperatures.
- 3 lb (1.4 kg) bone-in pork shoulder, trimmed and cut into 3–4 pieces - 1/2 cup (120 ml) lard or vegetable oil - 1 cup (240 ml) fresh orange juice - 1/4 cup (60 ml) fresh lime juice - 1 medium onion, quartered - 6 garlic cloves, smashed - 2 tsp (10 g) kosher salt - 1 tsp (2 g) ground black pepper - 1 tsp (2 g) ground cumin - 1 tsp (1 g) dried oregano - 2 bay leaves - 1 cinnamon stick (optional) - 1 cup (240 ml) water, or as needed - Warm corn tortillas and diced onion/cilantro for serving (optional)
1. Pat the pork pieces dry, rub with salt, pepper, cumin, and oregano; brown in lard or oil in a large heavy pot over medium-high heat, working in batches until well browned on all sides. 2. Return all pork to the pot; add orange juice, lime juice, onion, garlic, bay leaves, cinnamon stick, and enough water to come about halfway up the meat; bring to a simmer, cover, and reduce heat to low; braise gently until pork is very tender, about 2 to 2 1/2 hours. 3. Remove pork and let cool slightly; shred or chop the meat, discarding excess fat and bones; skim fat from the cooking liquid and reserve a few tablespoons. 4. For crisp carnitas, preheat oven to 450°F (230°C). Spread shredded pork in a single layer on a rimmed baking sheet, drizzle with reserved fat and a little cooking liquid, and roast until edges are browned and crisp, about 15–20 minutes; alternatively crisp in a hot cast-iron skillet in batches. 5. Serve immediately with warm tortillas, diced onion, cilantro, lime wedges, and salsa.
Per serving | Servings: 6
Generated: 2026-11-05T19:37:47+00:00
*Values are estimates based on USDA data and mathematical calculations. Actual values may vary. Where data are unavailable, those contributions are excluded. Calories, Carbohydrates, Protein, Fat, Saturated fat, Cholesterol, Fiber, Sodium, Potassium, Calcium, Iron, Vitamin A, Vitamin C and Vitamin D are known subtotals. Missing contributions are unknown, not zero.