Heat oil.
Caramelize onions.
In separate pan, sautè mushrooms with balsamic vinegar.
Add onions to the mushrooms.
Season with salt and pepper. Let cook till onions are soft
Add garlic.
Add sausage. Cook till finished.
Add chicken stock, marsala, and white wine. Cook until reduced by half.
Add cream and bring to a boil.
Turn down the heat and simmer to skim away any impurities.
Cook rigatoni al dente
Add drained rigatoni to sausage mixture in pan and finish with basil, parmesan cheese, garlic butter , and salt/pepper.
Add more marsala for flavor as needed.
Place in pasta bowl and garnish with parmesan shavings and chopped parsley.