Bring a large pot of salted water to a boil over high heat. Add the pasta and cook until tender but still firm to the bite, stirring occasionally, about 8 to 10 minutes. Drain the pasta, reserving about 1/2 cup of the pasta water.
In a large saute pan, heat the oil over medium-high heat. Add the garlic and cook until fragrant, about 1 minute. Add the asparagus, season with the salt and pepper, and cook for 3 minutes until slightly soft. Add the cherry tomatoes and peas. Cook for 2 minutes. Pour the stock into the pan and bring the mixture to a simmer. Cook until the tomatoes start to burst and the stock is reduced by half, about 3 minutes.
Transfer the asparagus mixture to a large serving bowl. Add the cooked pasta and 1/2 of the Parmesan. Toss well, adding reserved pasta water, if needed, to loosen the pasta. Garnish with the remaining Parmesan and chopped basil.