Heat the butter in a large pot or dutch oven over medium heat. Add the onions, garlic, oregano, thyme, salt, and pepper and cook, stirring occasionally, until the onions are golden brown and softened, about 15 minutes.
Add the beef stock, red wine, and Parmesan cheese and bring to a simmer. Reduce the heat to low, cover, and simmer for 30 minutes.
Uncover the pot and simmer for an additional 10 minutes.
Ladle the soup into oven-proof bowls and top with the croutons and Gruyère cheese. Place the bowls on a baking sheet and broil until the cheese is melted and bubbly, about 3 minutes.
Garnish with fresh parsley and serve.