Determine all functions $f: \mathbb R \to \mathbb R$ which satisfy the inequality
$$f(a^2) - f(b^2) \leq \left( f(a) + b\right)\left( a - f(b)\right),$$
for all $a,b \in \mathbb R$.
1. Let \( P(a, b) \) be the assertion of the given inequality:
   \[
   f(a^2) - f(b^2) \leq (f(a) + b)(a - f(b))
   \]
   for all \( a, b \in \mathbb{R} \).

2. Consider the assertion \( P(b, a) \):
   \[
   f(b^2) - f(a^2) \leq (f(b) + a)(b - f(a))
   \]

3. Combining \( P(a, b) \) and \( P(b, a) \), we get:
   \[
   f(a^2) - f(b^2) \leq (f(a) + b)(a - f(b))
   \]
   and
   \[
   f(b^2) - f(a^2) \leq (f(b) + a)(b - f(a))
   \]

4. Adding these two inequalities:
   \[
   f(a^2) - f(b^2) + f(b^2) - f(a^2) \leq (f(a) + b)(a - f(b)) + (f(b) + a)(b - f(a))
   \]
   Simplifying, we get:
   \[
   0 \leq (f(a) + b)(a - f(b)) + (f(b) + a)(b - f(a))
   \]

5. Rearranging the terms, we obtain:
   \[
   0 \leq f(a)a - f(a)f(b) + ba - bf(b) + f(b)b - f(b)f(a) + ab - af(a)
   \]
   Simplifying further:
   \[
   0 \leq 2ab - 2f(a)f(b)
   \]
   Dividing by 2:
   \[
   0 \leq ab - f(a)f(b)
   \]
   Thus, we have:
   \[
   f(a)f(b) \leq ab
   \]

6. Now, consider the assertion \( Q(1, -1) \):
   \[
   f(1)f(-1) \leq -1
   \]
   Since \( -1 < 0 \), one of \( f(1) \) or \( f(-1) \) must be positive and the other must be negative.

7. Adding \( Q(1, x) \) and \( Q(1, -x) \):
   \[
   f(1)f(x) \leq x
   \]
   and
   \[
   f(1)f(-x) \leq -x
   \]
   Adding these two inequalities:
   \[
   f(1)(f(x) + f(-x)) \leq 0
   \]

8. Similarly, adding \( Q(-1, x) \) and \( Q(-1, -x) \):
   \[
   f(-1)f(x) \leq -x
   \]
   and
   \[
   f(-1)f(-x) \leq x
   \]
   Adding these two inequalities:
   \[
   f(-1)(f(x) + f(-x)) \leq 0
   \]

9. From the above, we conclude that:
   \[
   f(-x) = -f(x)
   \]
   This implies that \( f \) is an odd function.

10. Consider the assertion \( Q(x, -y) \):
    \[
    f(x)f(y) \geq xy
    \]
    Combining with \( f(x)f(y) \leq xy \), we get:
    \[
    f(x)f(y) = xy
    \]

11. Setting \( y = 1 \), we have:
    \[
    f(x)f(1) = x
    \]
    Since \( f(1) \neq 0 \), let \( f(1) = a \). Then:
    \[
    f(x) = ax
    \]

12. Plugging \( f(x) = ax \) back into the original inequality:
    \[
    f(a^2) - f(b^2) = a^2a^2 - a^2b^2 = a^2(a^2 - b^2)
    \]
    and
    \[
    (f(a) + b)(a - f(b)) = (a^2 + b)(a - ab) = a^2a - a^3b + ba - b^2a
    \]
    Simplifying, we get:
    \[
    a^2(a^2 - b^2) \leq a^2a - a^3b + ba - b^2a
    \]
    This holds if \( a^2 = 1 \), so \( a = \pm 1 \).

13. Therefore, the solutions are:
    \[
    \boxed{f(x) = x \quad \text{for all } x}
    \]
    and
    \[
    \boxed{f(x) = -x \quad \text{for all } x}
    \]