Heat olive oil in a medium Dutch oven or other heavy pot over medium-high. Add half of mixed mushrooms (such as maitake, oyster, crimini, and/or shiitake), torn into bite-size pieces, in a single layer and cook, undisturbed, until edges are brown and starting to crisp, about 3 minutes. Toss and continue to cook, tossing occasionally, until brown and crisp all over, about 5 minutes more. Using a slotted spoon, transfer mushrooms to a plate; season with kosher salt. Repeat with remaining mushrooms and more olive oil and more salt.
While you're doing this, cook the spaghetti in a large pot of boiling salted water, stirring occasionally, until very al dente, about 2 minutes less than package directions.
Reduce heat to medium-low and return all of the mushrooms to pot. Add 2 medium shallots, finely chopped, and cook, stirring often, until translucent and softened, about 2 minutes.
Using tongs, transfer pasta to pot with mushrooms and add ½ cup heavy cream and 1 cup pasta cooking liquid. Increase heat to medium and bring to a simmer. Cook, tossing constantly, until pasta is al dente and liquid is slightly thickened, about 3 minutes.
Remove pot from heat. Add zest and juice of ½ lemon, generous handful of parmesan, parsley, and 2 tbsp butter, cut into pieces, tossing to combine. Season generously with freshly ground pepper; taste and season with more salt if needed.
Divide pasta among bowls and top with more parmesan and fresh parsley.