Remove the corned beef from its package and rinse the meat several times under cool water to remove any excess salt from it.
Place corned beef in a large dutch oven or oven-safe pot. Then sprinkle with the contents of the spice packet, if any.
Add onion, garlic, thyme, garlic, bay leaves, peppercorns, allspice berries, and mustard seeds.
Pour in the broth and beer and add more water to fully cover the beef.
Place the pot on the stove on medium heat. Bring to a boil, then cover and reduce the heat to a simmer. Let it cook for about 2 1/2 -3 hours.
While your meat is cooking, wash and cut the potatoes into desired chunks, depending on the size of the potatoes. Peel and slice the carrots in large chunks.
If using a small cabbage, cut it in wedges otherwise cut in large chunks. Set aside.
When brisket is cooked to desired tenderness, add the carrots, and potatoes, to the pot so it is fully covered in the liquid. If desired, remove the corned beef before adding potatoes and carrots.
Bring the pot to a boil, reduce heat and cook on medium-high for about 13-15 minutes or until tender. Do not overcook.
Carefully remove the corned beef from the dutch oven and place it on a large plate or a platter.
Heat up a skillet with butter then add the potatoes and carrots and saute for 3-5 minutes or until slightly brown. Place them on the platter.
In the same skillet, add butter, or oil followed by onions, and garlic. Add the cabbage and thoroughly mix. Cook over medium heat, adding liquid from the beef as needs to flavor the cabbage and prevent any burns.
Season with salt and pepper to taste. Remove and place next to the corned beef. Slice the beef into thin slices against the grain and serve with cabbage, potatoes, and carrots. If desired, serve with a horseradish sauce.