In a large saucepan over medium heat, add the oil and saute the onion and garlic until translucent and soft. Add the barley and stir together so the barley gets coated with oil and begins to toast.
Reduce the heat and slowly add the vegetable stock a little at a time to the toasted barley. Stir constantly until all the liquid you've added has evaporated, then add more. Continue to do this until all the stock has been used. Reduce the heat to low and add the asparagus. Simmer until the asparagus is cooked, normally around 8 minutes. Cook's Note: Alternatively, you could blanch the asparagus first in boiling water, prior to adding it to the cooked barley. This will save you time if you're in a hurry.
Stir in the cream, cheese and butter and adjust the seasoning with salt and pepper, to taste. Transfer to a serving bowl and garnish with the chopped basil before serving.