Bring plenty of water to the boil, season with salt and cook the spaghetti al dente.
Peel the asparagus, onion and garlic. Cut off the ends of the asparagus and divide into pieces approx. 2 - 3 cm in size. Cut the onion into half rings. Finely chop the garlic. Clean the mushrooms and cut into approx. 0.5 cm thick slices.
Heat the butter and oil in a pan and fry the asparagus pieces, onion rings and mushroom slices in them. Season with salt and pepper. The asparagus should be firm to the bite and the mushrooms should take on color. Take everything out of the pan and set aside.
Heat 50 ml of olive oil in the same pan and lightly fry the chopped garlic. Add a ladle of pasta water and reduce a little.
Drain the pasta and place in a pan. Add the vegetables / mushrooms that have been set aside, mix well, sprinkle with chilli flakes and chopped parsley.
Halve the cherry tomatoes and pour over the spaghetti together with the grated Grana Padano. Garnish with a parsley leaf and serve immediately.