The command apt-get upgrade will not add or remove packages. apt-get dist-upgrade will add or remove packages as required.
The command apt-get dist-upgrade will not automatically upgrade you from one release to another unless you have also updated your sources (/etc/apt/sources.list) to point at a newer release.
upgrade is used to install the newest versions of all packages
currently installed on the system from the sources enumerated
dist-upgrade, in addition to performing the function of upgrade,
also intelligently handles changing dependencies with new versions
Are there special concerns to be aware
of when doing a dist-upgrade vs
For the most part I always apt-get dist-upgrade to apply updates to a system. Of course pay attention to exactly what new packages are being added or removed. Frequently this happens when something is being added like a newer kernel that isn't compatible with the previous and you will have to recompile modules. If you have some kernel module you had to build on your own, then you may need to make sure you recompile it for the new kernel. I have a couple systems with network interfaces not supported by the stock kernel that I have to recompile the network driver after each kernel update.