In this answer it was mentioned that the process of rooting is different from unlocking or using custom ROMs.
What are the differences between these processes (and any other potentially related terms)? What do each of them accomplish?
rootaccount on a Linux system; this is analogous to the built-in Administrator account in Windows.
Unlocking or developer unlocking is used for developers or other to allow you to upload .xap files that aren't available on the Marketplace or that you are debuggin/developing locally on a PC.
Unlocking can also referring to carrier/network or SIM unlocking, allowing a mobile device to be used on other operators' networks.
rooting is the act of gaining root access to a device, giving yourself privileges to work around limitations.
unlocking is the act of removing restrictions from a device, allowing different providers / countries. In the case of the Windows Phone there is also Developer Unlocking, which unlocks the phone such that developers can deploy their test applications to it without requiring to go through the Marketplace.
custom ROMs are customized versions of the OS, incorporating limitation patches and/or new features.
All of these are usually obtained by a security hole in the protection. This requires the user to do a few steps to give him additional privileges, unlock the phone or to be able to install a custom ROM to it.
These can come in different forms: Phone Application, Computer Flash Software, ...
There are quite a few different types of unlocks. There unlocking mechanisms have evolved over time. And not all unlocking-mechanisms are available for all devices. You have to choose the best method for your device.
Developer Unlock A developer unlock will allow you to sideload a restricted amount of apps on your device.
Interop Unlock Allows you to run apps with Native code
Full Unlock Full Unlock patches binaries of the operating system, to remove the policy-checks and allow full access to the filesystem and the registry through out the system.
To read more in detail, check this page. http://www.wp7roottools.com/index.php/guides/unlocks-explained
Developer Unlock is just the normal unlock you can get from the "Windows Phone Developer Registration" application that you can use when you signed up for a developer account at create.msdn.com. with this developer unlock you can deploy XAP files (files containing an app) to your phone to test your own developed app. This also makes it possible to deploy other people's xap files called "Home brew" apps that aren't in the marketplace but you just download somewhere from the internet.
A Custom rom is installing a custom version of the OS that make it possible to remove the normal restrictions of only being able to download apps from the marketplace for example and give you root access (or administrator access if you use a more windows based name) rights on the phone so you can access other parts of the phone you would normally not be able to