I can't help wonder what triggered your question? Unlike Windows which keeps gobbling up more and more disk space after each (minor) upgrade you have less to worry about that on FreeBSD. Sure; some things might become a bit larger, but it's not as if we're talking about tens of gigabytes expansion.
But if you want to keep more control over the whole upgrade process then there's yet another way to upgrade instead of using
freebsd-update: compiling the source tree yourself and performing the upgrade manually.
This may be a bit daunting at first, I still remember the first time I did this, but it can be a very rewarding experience. You'll get pretty much full control over what parts you want to include in the new system and which are best left out (see
src.conf(5)), you can tune and/or optimize the kernel to fully match your system. Even if you don't want to remove things it can still be useful to add functionality (for example IPSec support or resource limiting support). A good read on this is
Chapter 8 of the Handbook.
Now, please keep in mind that I'm biased. At one point I started using the source tree and liked it so much that I never looked back at
freebsd-update again (it's not even installed anymore on any of my FreeBSD environments). But that's not saying that
freebsd-update can't cope: it does a perfect job on upgrading and will even allow you to roll things back if needed. You also don't have to worry about "bulk" getting in your way.
But if you prefer full control then I'd definitely recommend to look into rebuilding the world.
A good source of information on upgrading FreeBSD is
chapter 23 of the handbook. It might give you some good impressions on all this.