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 pasta and reserve 1/2 cup of the pasta liquid.
Blend the basil, pine nuts, garlic, zests, juices, salt, and pepper in a food processor until the mixture is finely chopped. With the machine running, gradually add the olive oil until the mixture is smooth and creamy. Transfer to a bowl and stir in the Parmesan. Toss with the warm spaghetti and the reserved pasta water.
Meanwhile, place a grill pan over medium-high heat or preheat a gas or charcoal grill. Brush both sides of the swordfish fillets with olive oil and season with salt and pepper. Grill the swordfish 3 to 4 minutes a side for a 1-inch thick fillet.
Transfer the pasta to a serving platter and top with the grilled swordfish fillets and serve.