Windows Symlink Jun 2026
Symlinks were not a native feature of early Windows versions. They arrived with the introduction of the NTFS (New Technology File System) in Windows NT 4.0, but for years, they remained a poorly documented and underutilized capability. The major turning point was Windows Vista, which introduced the mklink command-line tool and significantly improved support for symlinks across the system. This aligned with Microsoft's broader push toward more robust developer tools and Unix interoperability (via subsystems like SUA and later WSL). From Windows Vista onward, through Windows 7, 10, and 11, symlink functionality has remained largely consistent, with improvements primarily in security defaults and the ease of creating them without administrator privileges (see below).
Symlinks only work on NTFS or ReFS formatted drives. They are not supported on older FAT32 or exFAT file systems.
mklink /D "C:\Steam\steamapps" "D:\SteamGames" windows symlink
An independent file that points to a target path. If you delete the symlink, the original file remains; if you delete the original file, the symlink becomes "broken".
Similar to a symlink but specifically for directories. Junctions are older and strictly local, meaning they cannot point to remote network paths. How to Create Symlinks in Windows Symlinks were not a native feature of early Windows versions
:If you want a link on your desktop called Notes.txt that points to a file in your Documents folder: mklink "C:\Users\YourName\Desktop\Notes.txt" "C:\Users\YourName\Documents\Real_Notes.txt" . Key Options for mklink
Despite their power, symlinks have important limitations. First, are supported but can be confusing; a symlink pointing to ..\Folder\File resolves relative to the symlink's location, not the current working directory of the process. Second, network paths (UNC) can be targeted, but this requires careful configuration and may fail due to network permissions or offline status. Third, symlinks can create circular references (Link A points to B, B points back to A), which can confuse recursive operations like file searches or anti-virus scans, potentially causing infinite loops. Fourth, while most applications respect symlinks, some older or poorly written ones might follow them incorrectly or break when writing through a symlink. Finally, deleting a symlink ( del on a file symlink, rmdir on a directory symlink) removes only the link, not the target. Conversely, deleting the target leaves a broken symlink. This aligned with Microsoft's broader push toward more
While symlinks can point to network locations, you may need to enable local-to-remote or remote-to-remote symlink evaluation using the fsutil behavior set symlinkevaluation command. Practical Use Cases Symlinks - MSYS2
Deleting a symlink works exactly like deleting a regular file.
Depending on what you are linking, you might need different flags:
Older software might be hardcoded to look for resources in a specific path like C:\Program Files\OldApp\Data . A symlink can redirect that path to E:\MassiveDataset , saving the user from reinstalling or modifying the application.
