If a new version of a package needs a new dependency, apt-get dist-upgrade will upgrade and install the dependency, apt-get upgrade won't. Kernel upgrades usually come as a new package, which is a new dependency of the new version of the kernel metapackage. If you want to install kernel upgrades by command line, you need apt-get dist-upgrade. This is to make it possible to keep an old kernel and keep the system bootable if there is a bug in the new kernel or installation failed.
If a new version of a package conflicts with an already installed package, apt-get dist-upgrade may remove the conflicting package and upgrade the other, apt-get upgrade won't. But I've never seen apt-get dist-upgrade remove packages, so I assume it's rare. But I don't run the development version or use many PPAs.
When a new version of a package no longer depends on some dependency, both apt-get upgrade and apt-get dist-upgrade will upgrade the package and leave the dependency in place (possibly upgrading that too; there is no need to remove the ex-dependency), but it may become autoremovable.