Heat olive in a large saucepot over medium-high heat. Add the chopped onion, celery, and carrots. Season with salt and pepper and saute until the vegetables are translucent, about 5-6 minutes. Add garlic and saute for 1 more minute.
Add dried oregano, bay leaf, red pepper flakes, dried thyme, parmesan rind, canned cannellini beans with their liquids, and chicken or vegetable broth. Cover the pot and bring it to a boil. Reduce the heat to medium-low and continue to simmer for 20 minutes.
Remove bay leaf and parmesan rind. Add spinach and cooked orzo and cook until spinach wilts about 2-3 minutes. Season the soup with lemon, salt, and pepper.
Portion the soup into bowls and top with grated parmesan, fresh parsley, and fresh dill. Serve immediately.
Notes
You need 1 cup of dry orzo to yield 2 cups of cooked orzo.