Ruby on Rails is an MVC framework for building web applications using the Ruby programming language. It uses conventions like automatically mapping database tables to model classes to minimize configuration. The main components of a Rails application are ActiveRecord for ORM, ActionController for business logic and routing, and ActionView for templates. Creating a Rails app involves generating the basic folder structure and config files, defining models and migrations to create the database schema, and writing controllers and views. Associations like has_many and belongs_to provide shortcuts for defining relationships between models.