In a large oven-safe pot or Dutch oven, sauté bacon in butter over medium heat until crisp and browned (about 3-5 minutes). Remove bacon with a slotted spoon and set aside.
Pat lamb (or beef) dry with a paper towel.
Place the flour in a bowl or large Ziploc bag and season with about ½ teaspoon of kosher salt and ½ teaspoon of pepper. Add the meat and toss to coat well. Remove coated meat from the bowl and discard any extra flour.
Sear meat in the butter/bacon fat until browned on all sides (about 5 minutes). Depending on the size of your pot, you may need to work in batches so that the meat can brown without overcrowding.
Remove the meat from the pot and add the Guinness (or wine) and vinegar. Cook over medium-high heat, scraping the pan with a wooden spoon to loosen any browned bits.
Add bacon and meat back to the pot, along with the tomato paste, brown sugar, garlic, remaining 1 teaspoon of kosher salt, remaining ½ teaspoon of pepper, thyme, bay leaf, paprika, and broth. Stir really well to completely combine. Bring to a boil; then reduce to a low simmer.
Cover and cook, stirring occasionally, until the meat is tender, about 1 ½ hours. Add the onions and carrots and simmer, covered, for 10 minutes. Add the potatoes and mushrooms and simmer until vegetables are tender, about 30 minutes more. Add more broth at the end to thin the stew, if necessary. Discard bay leaf; stir in parsley, and season with salt and pepper, to taste. Ladle into bowls and serve. Garnish with additional fresh parsley, if desired.