Cook pasta in a 6- to 8-quart pot of boiling salted water 8 minutes. Add asparagus and boil until asparagus is crisp-tender and pasta is al dente, about 2 minutes.
While pasta is cooking, heat cream just to boiling in a 1-quart heavy saucepan, then stir in zest and remove from heat.
Ladle out 1 cup pasta cooking water and reserve, then drain pasta and asparagus in a colander.
Toss pasta and asparagus with cream, dill, salt, pepper, and 1/2 cup reserved cooking water in a large bowl (or in pasta pot). If pasta looks dry, moisten with some of remaining water. Add salmon and toss well.