React.js is a JavaScript library that uses a virtual DOM to improve performance issues with traditional web development approaches that involved full page refreshes on data changes. It works by rendering the UI into memory first before writing to the real DOM, allowing it to selectively update parts of the real DOM for better efficiency. Key concepts in React include components, props, state, lifecycle methods, events, and immutability to facilitate fast re-rendering when data changes.