MacPorts
It is more independent of Mac OS X, this means MacPorts will just ignore many of the system libraries and softwares that already available in Mac OS X and pull its own one instead, which could be slower when the utility you install requires some set of large libraries and softwares.
But this kind of choice is safer because the packages you installed are less influenced by Apple's system update/upgrade procedure.
Homebrew
It is more dependent on existing Mac OS X installed packages, so this will speed up the installation of packages and minimize redundant libraries.
But the risk is installed packages might be broken because of Apple's system update/upgrade.
So, these are the two different kind of tradeoff.
Also, Homebrew takes over /usr/local by default, with which some folks don't like this because it somehow conflict with the unix-tradition and might cause problems if you’ve already installed anything there (MySQL, etc.)
Apart from these differences, considering the packages these two can offer, you can check with these two commands if you already have MacPorts/Homebrew installed, which show you the packages they currently provided:
port list | wc -l
brew search | wc -l
And you will find out that MacPorts has much more packages than Homebrew.
(16917 v.s 2298 for now.)