My family likes both, but Via Napoli would be my recommendation.
San Angel Inn has wonderful atmosphere (although you may need to wait longer for a waterside table, which is a must if you want to be able to enjoy the scenery without other tables at each elbow), and we've always enjoyed the food, but there's no getting around the fact that it's wildly overpriced for what you get -- as in, over $30 for a piece of chicken or a couple of tacos with a little garnish, but no real side dishes, so you'll want to fill up on the chips and salsa!
Via Napoli is slightly less unique in terms of atmosphere, but is bright and pleasant, and it's fun to watch the pizzas come in and out of the ovens (if your table has a view of them). We usually order one big pizza to share, a family-sized salad (my vegetarian daughter just picks the meat off of her pizza slices, and has an extra helping of the salad), and a wine flight to share with my husband, and it still ends up being among our least expensive table service meals. Of course, the math changes abruptly if you order individual adult-sized entrees rather than a big pizza, so do keep that in mind.
Via Napoli used to offer a vegan pizza: I don't see it on the published menu, but I see blog posts in which visitors mention having it within the last few months, so I think it must still be there.