Heat the olive oil or butter in a large soup pot over medium heat. Add the chopped onion and garlic, and sauté until they are softened and fragrant, about 3-5 minutes.
Stir in the shredded cabbage, carrots, and celery. Cook, stirring occasionally, until the vegetables begin to soften, about 5-7 minutes.
Pour in the chicken or vegetable broth, and add the bay leaf, dried thyme, salt, and pepper. Bring the soup to a simmer, then reduce the heat to low and let it cook, partially covered, for about 20-25 minutes, or until the vegetables are tender.
If you're adding cooked sausage or bacon, stir it into the soup at this point.
While the soup is simmering, cook the egg noodles or pasta according to the package instructions until al dente. Drain and set aside.
Once the vegetables are tender, remove the bay leaf from the soup. Taste and adjust the seasoning if needed.
To serve, ladle the soup into bowls and add a portion of cooked noodles or pasta to each bowl. Garnish with chopped fresh parsley, if desired.
Serve hot and enjoy your comforting bowl of haluski soup!