I think that the Pokemon you should use depends on how you are using them in your team. In this case, you should find what Pokemon is better.
Wailord
Wailord is not you average water attacker, though he does have some fairly good stats among him. But, more people would use him as a HM/TM supporter, or dealing with some powerful opponents they're stuck on, in which wailord can beat. Looking at wailord, his defensive stats aren't the best, but the huge boost in HP balances it off. Also, his attacking stats are fiarly moderate - therefore it will be perfect for any move. Also, wailord is a necessary Pokemon to have on your team when trying to receive the legendary golems (registeel, regice, and rogirock). He has a great structure and a perfect Pokemon that should be on your team.
Swalot
Swalot is also another fantastic Pokemon because he has a great use of average stats, making him a strong worthy opponent. He does have a wide moveset, but not types to choose from - mainly his STAB moves. He doesn't posses much of an attacking skill, but he could be useful when dealing with the new and powerful fairy types.
Altogether, both Pokemon are fantastic, but I would definitely choose Wailord > Swalot because he can be used for almost anything (besides a defender). He posses much better strength and also has a better structure of resistances and weaknesses than swalot. So, wailord is your ideal Pokemon - in my opinion. Your Choice! Hope I helped! :)