Redux Thunk is middleware for Redux that allows writing action creators that return a function instead of an action object. This allows asynchronous logic to be written in action creators. A thunk is a function that wraps an expression to delay its evaluation. Redux Thunk uses thunks to delay dispatching actions until asynchronous logic has completed. It works by wrapping the store with a higher-order component that intercepts dispatched actions and handles thunks differently than regular action objects. This allows asynchronous logic to be written without breaking the rule that action creators must be pure functions.