Heat the olive oil over a high heat in a large saucepan. Add the beef in batches and sauté in the hot oil until brown. Remove the goulash from the saucepan and set aside.
Add the pickling onions to the saucepan and cook on a medium heat until softened. Add the garlic and sauté for 30 seconds.
Return the beef and its juices to the saucepan. Pour in the beef stock as well as the red wine vinegar. Cover and allow to simmer for 5 minutes.
Stir in the can of tomatoes, tomato purée, lemon zest and juice, sugar, cinnamon, rosemary and the bay leaf. Bring to the boil, then cover and simmer on low for 1 hour, checking every now and again to ensure it doesn’t catch and there is enough liquid in the pot. Add a cup of water if necessary, you don't want the stew to dry out.
One hour in to cooking, add the baby potatoes, brinjals and baby marrows. Simmer for a further 45 minutes or until the vegetables are cooked through and the beef is tender.
Season generously with salt and pepper. Garnish with fresh Italian parsley and serve with hot crusty bread.