Heat the olive oil in a large pot over medium-high heat. Fry the onion for 2-3 minutes until transparent. Add in the garlic and cook until fragrant; add the orzo and fry to brown slightly (about 2 minutes) in the oil.
Next, add in the broccoli florets and asparagus pieces, stirring occasionally for a further 2 minutes to absorb all the flavours in the pot.
Pour in the broth along with 3/4 teaspoon of salt. Give it a good stir to combine.
Bring to a boil; cover and reduce heat down to low and allow to cook for 5-6 minutes, until most of the liquid has absorbed, while stirring occasionally.
Uncover the pot and add in the peas and parmesan cheese. Stir gently to combine with the rest of the ingredients, and continue to cook on low heat for about 2-3 minutes until the peas have cooked through, the cheese has melted, and the pasta is cooked to your liking, while stirring occasionally.
Take off the heat. Stir the half and half through to combine well and squeeze in the lemon juice. Mix through; taste test and add more salt and pepper if desired.
Garnish with the fresh chopped parsley; top with the grape tomatoes and serve immediately.
Notes
*If you find all of the liquid has absorbed and the pasta is not done, add 1/2 cup extra broth or water, stir through, and allow to cook through