Heat the oil in a large nonstick frying pan over moderate heat. Add the onion and garlic and cook for 5 minutes or until soft. Add the fennel and cook for a further 5 minutes or until soft. Add the tomatoes, sardines, and a pinch each of salt and cayenne pepper, and bring to the boil. Reduce to a simmer, cover and cook for 15 minutes or until the sauce is blended and highly flavoured.
Meanwhile, cook the pasta in a large saucepan of boiling water according to the packet directions, until firm-tender. Drain well. Toss the hot pasta with the sauce and scatter over the pine nuts.