Sauté the aromatics: Heat olive oil in a large pot over medium heat. Add onion, carrots, and celery.
Cook 5–7 minutes, stirring occasionally, until the onion is translucent and the carrots start to soften.
Add garlic and herbs: Stir in the garlic, oregano, thyme, and bay leaf. Cook 30–60 seconds until fragrant, being careful not to let the garlic brown.
Layer in the veggies: Add zucchini, bell pepper, and tomatoes. Cook 2–3 minutes, stirring to coat everything in the herby oil.
Pour in the broth: Add the vegetable broth and a big pinch of salt and pepper.
Bring to a gentle boil over medium-high heat.
Add the orzo: Stir in the orzo. Reduce to a lively simmer and cook 8–10 minutes, stirring occasionally so the orzo doesn’t stick to the bottom. Taste a grain—when it’s just tender, you’re there.
Add greens and finish: Stir in the spinach or kale and simmer 1–2 minutes, just until wilted.
Turn off the heat. Add lemon juice and fresh parsley or basil. Taste and adjust salt, pepper, and lemon.
Serve: Ladle into bowls.
Top with a pinch of red pepper flakes, a drizzle of olive oil, and grated Parmesan if you like. Serve warm.