Begin by bringing water to a boil in a saucepan. Add salt, peppercorns, and bay leaves to the boiling water. Once the mixture has boiled, set it aside to cool. After it has cooled, stir in the vinegar.
Peel and slice the onions into strips. Gently rub the onion strips between your hands to release their juices. This helps to enhance the flavour of the marinade.
Cut the meat into cubes, about 4 cm in size. In a large bowl, mix the meat with the onions, ensuring the onions are evenly distributed. Pour the marinade over the meat, making sure it’s completely coated. Cover the bowl and refrigerate for at least 4 hours, or preferably overnight, to allow the flavours to fully penetrate the meat.
If you’re using wooden skewers, soak them in water for about 30 minutes before grilling. This will prevent them from burning on the grill.
After the meat has marinated, remove it from the bowl, discarding the onions. Thread the meat cubes onto the skewers, leaving a small gap between each piece for even cooking.
Preheat your grill or barbecue to medium-high heat. Ensure the grill grates are clean and lightly oiled to prevent the meat from sticking. Place the skewers on the grill, spaced slightly apart. Cook the Shashlyk for 15-20 minutes, turning the skewers occasionally to ensure even cooking. The meat should be nicely browned on the outside.
Once the Shashlyk is cooked, remove the skewers from the grill and let them rest for a couple of minutes. Serve hot, preferably with flatbread, a fresh salad, grilled vegetables and your favourite dipping sauce.