SQLAlchemy Core is a lower-level, schema-centric approach that works directly with tables, columns, and SQL expressions. It's closer to raw SQL and offers more control.
SQLAlchemy ORM is a higher-level, object-centric approach that maps database tables to Python classes and rows to object instances.
# Core approach
from sqlalchemy import text
result = connection.execute(text("SELECT * FROM users WHERE id = :user_id"), {"user_id": 1})
# ORM approach
user = session.query(User).filter(User.id == 1).first()
Core is typically faster and more explicit, while ORM provides more abstraction and is easier for complex object relationships.