I couldn't find a non-kinematic physics character controller that does everything, so I made one from scratch. It handles steps, moving platforms, friction, weight, ground locking, being pushed or launched, root motion,
How to Check if Your Player is GROUNDED Unity Tutorial - YouTube
Unity - Manual: Character Controller
Released] Kinematic Character Controller - Unity Forum