I'm not an expert, so this is what i undestand and if someone more knowledgeable can correct me it is good:
The basic scheme for a control law follows the linear equations of motion that have this basic form:
acceleration = AircraftCharacteristics*AircraftState + ControlSurfaceCharacteristics*ControlSurfaceState
In this equation, you want to compute AircraftState (It is an Ordinary Differential Equation) . All ~Characteristics matrices are known. Acceleration is measured (by sensors on the plane). ControlSurfaceState is computed too.
And thus the control laws try to resolve this:
Desired performance = SomeCoefficient*AircraftState <---- (You computed AircraftState above. The SomeCoefficient matrix is known)
The desired performance can be a state (an AOA, a sideslip angle etc..) or an acceleration (pitch,roll rates for example).
In classical non adaptive control laws, ControlSurfaceState, which is the position of the control surface, is a lookup table, that is you have hard coded how much you must move your control surfaces to match a performance.
There're two problems with that:
1/ There're non linear aero and mechanical processes that can't be predicted with enough certainty. For example asymmetric vortex burst, or aeroelastic deformations of the structure. Thus, classical non adaptive models can't exploit the performance of the aircraft to the max because the lookup table value must be a safe estimation so necessarily under performing.
2/ You need a fairly specialized ControlSurfaceState matrix to account for your aircraft dynamics, which means if you want to transfer your control law to another type of aircraft..say a VTOL version, you need to rewrite the ControlSurfaceState matrix.
In NDI control law, the ControlSurfaceState matrix in computed in real time (by inverting the ControlSurfaceCharacteristics matrix, hence the name Dynamic Inversion. That means you are trying to find the ControlSurfaceState (unknown) matrix that gives the ControlSurfaceCharacteristics matrix (known), of course accounting for your AircraftCharacteristics matrix(also known)). Thus you can adapt the control surface deflections to non linear processes.
Since the surface motion is computed in real time according to you Aircraft and ControlSurface Characteristics matrices, if those latter incorporate non linear quantites like aerolestatic, or cross coupling (usage of the same surface for different functions) then the ControlSurfaceState computation will be even better adapted to non linearities e.g destruction of some part of the control surfaces, or high AOA dynamics etc..
Future fighters will likely use aeroelastic active wings or be tailless. In those case NDI like control laws allow for much better adaptation.
And if you want to transfer the data to another aircraft, all you have to do is feed in new ~Characterstics matrices and the inversion will find the required control surfaces motions.
So, from there, you understand why it was selected for F-35, and also T-50, which is a training aircraft with the functionality of simulating different aircrafts flight controls (hence you just have to put different ~Characteristics matrices)
However NDI is not perfect. Since the inversion is dependent on the ~characterstics matrices, that is the modeling of the aircraft, and that no model is perfect, there're errors and the inversion can't fully compute the necessary control surface motions needed to match a performance. Be it classical or NDI systems, you have a loop that compares the actual performance with the desired one. The FCS will continue to move the control surface until the performance is matched. But the FCS needs to know how to move it, so that brings us back to the ControlSurfaceState inversion. We need something to improve it in those cases.
To this effect, they are usually complemented with neural networks that statistically approximate the fully non linear equations relating the desired performance to the control surface motions. Neural Network have the great advantage of learning the relationship between performance and control surface motions in real time so they are great tools for that.
Just a vocabulary remark: While NDI treats with non linear processes, the actual equations used are linear.