YouCompleteMe works best for C-based languages (C, C++, Objective-C, Objective-C++) and it's semantic engine is Clang-based which means that it only works for the C-family languages.
Deoplete was written to be an extensible autocompletion engine. Many of its users have written add-ons supporting most well-known programming languages, as well as more esoteric sources (active tmux panes, web browser windows, GitHub issues, etc.)
The free version can only really provide suggestions for small projects not exceeding 200KB in file sizes. Once you hit the limit, it only provide suggestions partially. This is due to the way TabNine works — it builds an index of your project and gives suggestions based on that, and 200KB is the index limit for the free version.
TabNine recognizes code intelligently by applying machine learning techniques to your codebase. It can generalize from only two examples, suggest completions based on lines of code before it, and even suggest completions for comments.
If you need to configure the behavior of completions (e.g. only showing the dropdown when you hit <C-n>), you should be able to do so through YouCompleteMe's configuration options, as the vim plugin is a fork of it.
The developers made paid features always available for free when auto-completing Rust code, in acknowledgment of how TabNine is made possible by the Rust ecosystem.
TabNine can suggest completions extremely fast — they pop-up immediately after you type a letter with no noticeable lag, compared to some other completion plugins. It promises ~20ms response time when auto-completing anything, and it's built on Rust where speed and memory-efficiency are first-class citizens of the language and ecosystem.
You can purchase a license key for $29 and receive free updates — there's no subscription models of any sort. The license key can also be used multiple times, on various other supported editors, since they're not locked to a single installation or machine.
It uses a lot of memory for a text-editor feature, and that's on top of whatever text editor you're using. Open a few instances of VS Code + TabNine + Firefox and you can easily cause your computer to start heavily swapping. (This only applies to the local ML model, not if you trust the cloud ML model instead.)