Heat butter in a large Dutch oven or stockpot over medium-low heat.
Sauté onion, garlic, and a pinch of salt and pepper until the onion turns translucent and the garlic becomes fragrant.
Increase the heat to medium and add ground sausage.
Cook until browned, breaking it apart with a spatula.
Drain any excess grease from the pot, then pour in the vegetable stock and marinara sauce and bring the mixture to a boil.
Let the soup simmer for 30–45 minutes, stirring occasionally to develop the flavors.
Taste and adjust salt and pepper. Stir in the heavy cream and heat gently for 2–3 minutes without boiling. Ladle into bowls and top with ricotta, Parmesan, and fresh basil.