Carefully wash the asparagus and trim the tips so that they stick 1-inch above the rim of the ramekin. Preheat the oven to 180C/350F.
In a small pan, saute the onion and garlic in the olive oil with the salt for about 5 minutes until soft. Using a hand blender, puree the onions and slowly add the milk. Set aside.
In a saucepan, melt the butter over low heat and add the flour. Immediately begin whisking to form a roux and cook, stirring continuously for 2 minutes. Once the roux begins to brown, add the onion and milk mixture and stir until smooth. Increase the heat to medium-high, bring the mixture to a boil and simmer for about 3 minutes. Remove from the heat and stir in the parmesan. Once cooled slightly, add the four egg yolks and stir until very smooth. Set aside.
In a clean bowl, whisk the egg whites with an electric mixer set to medium-high. Beat until soft peaks form, about 5 minutes. Take a large spoonful of the egg whites and stir into the soufflé mixture. Once incorporated, lightly fold in the remaining egg whites. Pour the soufflé mixture into the 4 asparagus-lined ramekins. Place on baking try and slide into oven.
Bake in the oven for about 45 minutes until the soufflé has risen. Test, insert a skewer into a crack on the side and when removed, should be clean. Serve immediately.