Preheat oven to 200°C. Bring 2 large saucepans of salted water to the bowl. Add pasta to one of the pans and cook according to packet instructions, then drain and cool under cold running water. In the other pan cook silverbeet for 2 minutes, then drain, refresh in iced water, drain again and squeeze out excess water.
For the cheese sauce, melt butter over medium-low heat. Add flour and cook, stirring, for 1-2 minutes until a paste forms. Gradually whisk in milk, season and bring to a simmer, stirring constantly. Cook for 2-3 minutes until the sauce thickens, stir in half the pecorino, then cook for a further minute, stirring constantly, until melted and combined. Remove from heat.
Heat the oil in a large saucepan over medium heat, add onion and garlic, and cook, stirring occasionally, for 5 minutes or until soft. Add mushrooms, cook for 4 minutes or until tender, then add drained silverbeet, parsley, cheese sauce and pasta. Season and gently stir to combine. Pour mixture into a 2-litre baking dish, scatter with remaining cheese and bake for 35 minutes or until golden.
