Uninstall Miniconda on Linux and macOS
Four commands, in this order, because the second one needs conda to still exist:
conda activate
conda init --reverse --all
rm -rf ~/miniconda3
rm -rf ~/.condarc ~/.conda ~/.continuum
The first activates base so the right conda answers. The second is what the old guides miss: conda init --reverse --all undoes what conda init did at install time, pulling the initialization block out of every shell config it touched, .bashrc, .zshrc and friends. Then the install directory goes (sudo rm -rf /opt/miniconda3 instead, for a system-wide install), and the last line clears the hidden leftovers: your channel config, the environments directory some tools create and the ancient .continuum folder. Open a new terminal afterwards and conda should come back as command not found, which this one time is the success state.
Use the uninstall.sh script on newer installs
Installs made from Miniconda 24.11.1 or later ship an uninstaller of their own, and the official uninstall documentation now leads with it:
~/miniconda3/uninstall.sh --remove-caches --remove-config-files user --remove-user-data
Those flags fold the manual cleanup into one command; run the script bare instead if .condarc should survive for a future install. System-wide installs take sudo -E /opt/miniconda3/uninstall.sh. No uninstall.sh in the install directory means the install predates the script, and the four manual commands above are the route.
Uninstall Miniconda on Windows
The install folder, by default miniconda3 in your user profile, contains Uninstall-Miniconda3.exe. Run it from there, or find Miniconda under installed apps in Settings. Beyond deleting files, it removes the Start Menu entries and the registry values the installer created, which is precisely the part a bare folder deletion never cleans up, so it stays the right tool even when deleting the folder looks quicker.
Scripted and fleet removals have a silent mode:
start /wait .\miniconda3\Uninstall-Miniconda3.exe /S
Since version 24.11.1 the uninstaller also accepts cleanup flags, making a full silent removal:
start /wait .\miniconda3\Uninstall-Miniconda3.exe /S /RemoveCaches=1 /RemoveConfigFiles=user /RemoveUserData=1
On older installs those flags don't exist, and you finish by deleting .condarc and the .conda folder from your user profile by hand.
Remove Miniconda installed with Homebrew
An install that arrived via the cask leaves via brew, but run conda init --reverse --all first, since brew won't touch your shell config:
conda init --reverse --all
brew uninstall --zap --cask miniconda
--zap earns its extra characters here: the miniconda cask defines a zap stanza covering ~/.conda, ~/.condarc and ~/.continuum, so the hidden-directory sweep happens for you, where a plain brew uninstall --cask miniconda removes only the install itself. Worth knowing in passing: the miniconda and miniforge casks conflict, so on macOS this uninstall is the mandatory first step of a switch. A fair number of people remove Miniconda for exactly that reason, moving to conda-forge-first tooling, and the Miniconda vs Miniforge comparison goes through what changes when you do.
Check your shell config for leftovers
On any machine where conda has been installed more than once over the years, verify the cleanup:
grep -n conda ~/.bashrc ~/.zshrc ~/.bash_profile 2>/dev/null
Clean output means done. What you're hunting is the block fenced by # >>> conda initialize >>> and # <<< conda initialize <<<, plus any manual PATH exports pointing at a miniconda directory. Orphaned lines like these cause most of the odd shell behavior people meet after a partial removal, the terminal printing a missing-directory error on every launch being the common one, and that family of problems has its own entry in the Miniconda troubleshooting guide. Delete the block, open a fresh terminal, and the shell is back to what it was before conda moved in.
Coming back someday is cheap, for the record. A clean reinstall takes minutes on any platform, and the walkthroughs to install Miniconda on Ubuntu and install Miniconda on Windows both start from an empty machine.