Add butter to a cast-iron pot over medium-high and heat. Add lamb shanks to pot and sear on all sides. Remove shanks to a plate and set aside. Reduce heat to medium, then add onions, carrots, garlic, and apple and sauté until soft and translucent.
Add lamb shanks back to pot. Add beef broth, Irish stout, and cider. The lamb shanks should be submerged—if they aren’t, add more liquid. Bring to a boil, reduce heat, then simmer, covered, for 2 hours.
Remove lid. Using two forks, check to see if meat is fall-apart tender, if not, continue to cook until it is. Pull out lamb shanks and set aside to rest. Using a slotted spoon, pull out some of the vegetables and set aside on a plate. Using an immersion blender, blend the remaining vegetables in the pot. Add whole vegetables back to pot. Reduce until you have a thick, textured gravy.