Pat the salmon dry and season well. Sprinkle both sides with salt and pepper. Drying the surface helps you get a good sear.
Sear the salmon. Heat the olive oil in a large skillet over medium-high.
Add salmon, skin-side down if using skin-on, and cook 3–4 minutes. Flip and cook another 2–3 minutes until mostly cooked through. Transfer to a plate; it will finish in the sauce.
Sauté the aromatics. Reduce heat to medium.
Add butter, then the onion and a pinch of salt. Cook 2–3 minutes until softened. Stir in garlic for 30 seconds until fragrant.
Build the sauce base. Pour in crushed tomatoes and broth.
Scrape up any browned bits for extra flavor. Simmer 2–3 minutes to reduce slightly.
Add cream and cheese. Stir in heavy cream, Parmesan, Italian seasoning, and red pepper flakes if using. Simmer gently 2–3 minutes, stirring, until the sauce thickens and looks glossy.
Add greens. Stir in spinach and cook until just wilted, about 1 minute.
Season with salt and pepper to taste.
Return the salmon. Nestle the fillets into the sauce. Spoon sauce over the tops and simmer on low for 1–2 minutes, or until the salmon flakes easily with a fork.
Finish with lemon and herbs. Squeeze in lemon juice to brighten, taste and adjust seasoning, then garnish with basil or parsley.
Serve. Pair with cauliflower rice, zucchini noodles, roasted asparagus, or a simple side salad.