In a large pot, heat the cooking oil over medium heat. Add the onion, carrots, and cabbage, and cook until softened, about 5-7 minutes.
Add in the garlic and cook until fragrant, about 1 minute.
Once the garlic is cooked, add in the lentils, cumin, thyme, bay leaf, and ham hock.
Pour in the beef broth and bring to a boil. Reduce the heat to low, cover, and simmer for about 40 minutes.
Take off the lid and simmer uncovered for an additional 20 minutes or until the lentils are tender and the ham hock is cooked through. For a thinner soup, cook with the lentils covered.
Remove the ham hock from the pot and set it aside to cool slightly.
Once the ham hock is cool enough to handle, remove the meat from the bone and chop it into small pieces. Discard the bone and return the meat to the pot along with the white wine vinegar.
Season the soup with salt and pepper to taste and serve hot.