Preheat the oven to 350 degrees. Season the beef with salt. In a large saucepan, heat 2 tablespoons of cooking oil over medium-high heat. Add the beef and sear on both sides until brown. Add the onions, spices and wine, and then add water until the beef is nearly covered. Bring the water to a boil, cover the pan with a lid, place the pan in the oven and cook for 90 minutes or until the beef is tender.
Remove the beef from the pan and let rest for 10 minutes. Strain the liquid into a bowl, reserving the sliced onions but removing the cinnamon stick and whole spices. Adjust the seasoning for the liquid, adding salt if necessary.
Butter the bread for the sandwiches and toast until crisp. Slice the meat into thin slices. Assemble the sandwiches with the beef and onions and serve with a side of the beef stock for dipping. Serves 4