* Automated type-based code navigation: go to definition, find all uses, etc.
* Auto-complete: Personally, I prefer simple auto-complete based on static analysis over AI "hope for the best"-style auto-complete.
* Debugger with all the bells and whistles: Step in and out, inspect variables, modify variables, breakpoints, conditional breakpoints, etc.
* Automated refactoring: Rename, etc.
Most text editors can do most of those, but I find that good debugger integration is rare outside of a dedicated IDE.