Combine basil, pistachios, garlic and lemon juice in a food processor. While running, drizzle in olive oil until well combined. Remove to a large bowl. Stir in Parmesan, salt and pepper. Set aside.
Bring a large pot of lightly salted water to a boil. Add cavatappi; return to a boil and cook 5 minutes. Add shrimp and asparagus to pot; return to a boil and cook 2 more minutes. Reserve 3/4 cup pasta water. Drain and rinse pasta, shrimp and asparagus under cold water. Stir pasta water into pesto. Fold pasta, shrimp and asparagus into pesto. Serve at room temperature or chilled, sprinkled with Parmesan, if desired.