For the turkey stock: Heat the oil in a heavy large pot over medium-high heat. Sprinkle the turkey necks with salt and pepper. Add enough necks to the pot to form a single layer without crowding, and cook until brown, about 10 minutes per side. Transfer to a bowl. Add the remaining necks and cook the first side until brown. Turn, add the onions and cook until the necks and onions brown, about 10 minutes longer.
Return all the necks to the pot. Add enough water to the pot to cover the bones by about 1 inch (about 4 quarts). Add the bay leaves, and thyme and tarragon sprigs. Bring to a boil, reduce the heat, cover partially and simmer until the stock is richly flavored, about 4 hours. Cool slightly.
Strain the stock into a bowl. Refrigerate overnight, or up to 3 days.
For the gravy: Skim the fat from the surface of the turkey stock and reserve. Warm 5 cups of the stock in a small saucepan just until melted. Remove from the heat.
Melt ¼ cup of the turkey fat and 2 tablespoons of the butter in a heavy medium saucepan over medium-low heat. Gradually sprinkle in the flour, stirring constantly. Stir until the flour starts to brown, about 4 minutes. Gradually whisk in the turkey stock. Add the Marsala and bring the mixture to a boil, whisking constantly. Reduce the heat to medium-low and boil gently until thickened to a light gravy, about 12 minutes. Mix in the cream and simmer until thickened slightly, about 3 minutes. Remove from the heat.
Melt the remaining 2 tablespoons of butter in a large nonstick skillet over medium-high heat. Add the mushrooms and rosemary. Sprinkle the mushrooms with salt and pepper and sauté until beginning to soften, about 3 minutes. Remove from the heat. (The gravy and mushrooms can be prepared 2 hours ahead. Place plastic wrap directly on the surface of the gravy and let stand at room temperature.)
Rewarm the gravy over medium-low heat, whisking occasionally. Mix in the mushrooms, minced thyme and tarragon. Season to taste with salt and pepper.