Peel and finely dice the shallots and the garlic. Grate the parmesan. Cut the butter into dice. Bring the stock to the boil and then reduce the heat to keep it at a gentle simmer.
Add a generous drizzle olive oil and a few pieces of butter to a large frying pan. Once melted, add the shallots to the pan and cook over a gentle until soft and translucent. Add the garlic, cook for a further minute and the turn the heat up to medium and add the rice. Stir to coat in oil and then add the wine to the pan. Keep stirring until all of the wine has been absorbed. Start adding the stock to the pan a ladleful at a time, allowing each addition to be absorbed before adding more. Stir constantly until all of the stock has been incorporated. This should take 18 to 20 minutes and the rice should be tender but still retain a slight crunch in the centre. Allow to rest for a couple of minutes before mixing in the butter and the parmesan. Season with salt and pepper.
Blanch the basil in boiling water for 30 seconds and then refresh in ice water to retain the colour in the leaves. Add the leaves to the olive oil and blend together. Pass through a muslin or very fine sieve until you have a clear green oil.
Bring a large pan of salted water to the boil. Snap the tough ends from the asparagus and then trim each stem with a pairing knife or vegetable peeler. Add the asparagus to the pan and cook for 3 minutes.
Heat a frying pan and add a splash of olive oil. Season the fish on both sides with salt and pepper and then add to the pan skin side down. Cook for 3 minutes over a high heat and then turn the fish over, reduce the heat to medium and cook for a further 4 minutes.
Spoon the risotto into the centre of dinner plates. Add three asparagus stems per person and then place the fish on top. Finish with a drizzle of basil oil to serve.
«Other fish such as salmon or red mullet would also work well with this recipe.»