Rinse the corned beef and put it into a large Dutch oven or heavy soup pot. Make a bouquet garni with the garlic, peppercorns, thyme and bay leaves and add to the pot. Stir in the stout, stock and enough water to cover the beef by 2 inches. Bring to a boil over medium heat, then reduce the heat to a gentle simmer and cook for 4 hours, covered, stirring occasionally.
After 4 hours, add the onion wedges, parsnips, and carrots, and cook for a 1/2 hour. Add the potatoes and the cabbage wedges and continue cooking until the cabbage is tender, but not limp, about 20 minutes. Remove the cabbage to a plate and allow the corned beef and other vegetables to continue cooking until the meat is tender.
In a separate large saute pan, heat 4 tablespoons butter over medium heat. Add the sliced onion, and a pinch of salt and saute until tender and beginning to brown, about 8 to 10 minutes.
Meanwhile, slice the cabbage thinly, gently pressing with a paper towel to remove excess water. Add the cabbage to the onion mixture and toss to coat well with the butter. Cook over medium heat until the cabbage begins to brown.
Remove the meat to a cutting board and slice. Serve at the table with all the vegetables piled onto a serving tray and the sliced meat onto another tray with some of the broth poured over the meat.