1. Resources loading involves blocking on CSS (CSSOM) construction before executing JavaScript. Asynchronous JavaScript avoids blocking. 2. Critical rendering focuses on minimizing blocking of visual content while above-the-fold resources like CSS are downloaded. Asynchronous scripts and media queries help. 3. Optimizing performance suggests techniques like minification, caching, reducing requests, prioritizing CSS, and deferring non-critical JavaScript.