This question is pretty broad, but I can say reading the docs helps for the optional modules, decorators, context processors, bells, whistles, doo-dads, etc. "Zeal" ( free, *nix/Windows) or "Dash" (paid/annoyware, OSX) are good offline documentation tools that can make searching the docs easier/faster.
To answer what is "required" is short: defined URLs with a matching "view" method which accepts an HttpRequest and returns an HttpResponse. Typical web framework stuff, but that's not really what Django sets out to solve. Other web frameworks are simply minimal and are designed to stay out of the way, but Django is more "batteries included" and that's where it shines should your app develop complexity.
Here is a good thread about single file django that will give you some clearer examples of bare minimum Django: How do I write a single-file Django application?