1. Bring a large pot of water to a boil.
2. While water is heating, heat oil in a large nonstick skillet over medium-high heat.
3. Add onion and cook, stirring, until soft, 6-7 minutes. Add garlic and cook 1 minute. Add tomatoes and cook (do not stir) until slightly bursting, 5 minutes.
4. Whisk together milk and flour and add to vegetables. Bring mixture to a boil; reduce heat and simmer. stir until thickened, 2-3 minutes.
Add salt and pepper, stir to incorporate, remove from heat, and cover with foil to keep warm.
5. Cook pasta according to package directions. During last 3 minutes of cooking, add carrots to boiling pasta. During last minute of cooking, add asparagus and zucchini.
6. Drain pasta and vegetables (do not rinse); add immediately to warmed vegetable-cream sauce.
7. Toss gently and divide among 4 pasta bowls.
8. Divide basil and parmesan among bowls.