First one should separate between the property and being $p$-complete and process of $p$-completion. In the classical setting, the $p$-completion functor is not so well-behaved for general spaces. For example, the $p$-completion of a space need not be $p$-complete. One way to remedy this is to notice that $p$-completion is not really a functor that should take values in spaces. To understand why, consider the analogous case of groups. The pro-$p$ completion of a group should really be consider as a pro-finite group, as apposed to an ordinary group. This additional structure can be encoded either via a suitable topology on the group, or by replacing the pro-finite group with its inverse system of finite (continuous) quotients. The latter description turns out to fit in a more general categorical context. The collection of "inverse systems of finite groups" can be organized into a category, which is called the pro-category of the category of finite groups. This is a general categorical construction which associates to a category $C$ the category $Pro(C)$ whose objects are inverse systems of objects in $C$ and whose morphisms are suitably defined. We have a natural fully-faithful embedding $C \longrightarrow Pro(C)$ which exhibits $Pro(C)$ as the free category generated from $C$ under cofiltered limits. Furthermore, if $C$ has finite limits then $Pro(C)$ has all small limits. Now, given categories $C,D$ which have finite limits, and a functor $f:C \longrightarrow D$ which preserves finite limits, we obtain an induced functor $Pro(f):Pro(C) \longrightarrow Pro(D)$ which preserves all limits. Under suitable additional conditions (for example, if $C,D$ and $f$ are accessible), the functor $Pro(f)$ will admit a left adjoint $G: Pro(D) \longrightarrow Pro(C)$. A classical example is when $C$ is the category of finite groups, $D$ is the category of all groups, and $f: C \longrightarrow D$ is the natural inclusion. In this case, the corresponding left adjoint $G: Pro(D) \longrightarrow Pro(C)$, when restricted to $D$, is exactly the pro-finite completion functor. If we replace $C$ with the category of finite $p$-groups then we obtain the pro-$p$-completion functor.

A similar situation occurs with spaces. Recall that a $p$-finite space is a space with finitely many connected components, each of which has finitely many non-trivial homotopy groups, and all the homotopy groups are finite $p$-groups. Let $\mathcal{S}_p$ be the $\infty$-category of $p$-finite spaces, $\mathcal{S}$ the $\infty$-category of spaces and $f: \mathcal{S}_p \longrightarrow \mathcal{S}$ the natural inclusion. The induced left adjoint $G:Pro(\mathcal{S}) \longrightarrow Pro(\mathcal{S}_p)$, when restricted to $\mathcal{S} \subseteq Pro(\mathcal{S})$, is in some sense the more correct version of the $p$-completion functor. In particular, if $X$ is a space, then the $p$-completion should really be considered as an inverse system of $p$-finite spaces, and not a single space. The inverse limit of this system then coincides with the classical $p$-completion. However, for many reasons it is better to consider the inverse system itself. For example, unlike the classical $p$-completion functor, the functor $G:Pro(\mathcal{S}) \longrightarrow Pro(\mathcal{S}_p)$ is a localization functor with respect to $\mathbb{Z}/p$-cohomology (of pro-spaces). As such, the functor $G$ is idempotent, in the sense that $G(G(X)) = G(X)$, a property that is not shared by the classical $p$-completion functor. Furthermore, the answer to the question "what information on $X$ is contained in $G(X)$" has a precise answer now. It is exactly all the information concerning maps from $X$ to $p$-finite spaces.

In light of the enhanced version of the $p$-completion functor, one might ask what does it mean for a space to be $p$-complete. Going back to the situation of groups, one may observe that some groups have the property that they are isomorphic to the underline discrete group of their pro-$p$ completion. In terms of pro-objects, some groups are isomorphic to the inverse limit of their pro-$p$-completion, realized in the category of groups. For example, the group $\mathbb{Z}_p$ of $p$-adic integers has this property. In this case, the group itself is completely determined by its $p$-finite quotients. Similarly, a space is $p$-complete when it is equivalent to the realization of its (enhanced) $p$-completion in the $\infty$-category of spaces. This property has several equivalent manifestations. One of them is the following. For each space $X$, we may consider the cochain complex $C^*(X,\overline{\mathbb{F}}_p)$ with values in the algebraic closure $\overline{\mathbb{F}}_p$ of the finite field $\mathbb{F}_p$. It turns out that $C^*(X,\overline{\mathbb{F}}_p)$ carries a natural structure of an $E_\infty$-algebra over $\overline{\mathbb{F}}_p$. The construction $X \mapsto C^*(X,\overline{\mathbb{F}}_p)$ can then be considered as a functor from spaces to the opposide category of $E_\infty$-algebras over $\overline{\mathbb{F}}_p$. This functor admits a right adjoint, sending an $E_\infty$-algebra $R$ to the mapping space $Map_{E_\infty-Alg}(R,\overline{\mathbb{F}}_p)$. For every space $X$ we then obtain a unit map $X \longrightarrow Map_{E_\infty-Alg}(C^*(X,\overline{\mathbb{F}}_p),\overline{\mathbb{F}}_p)$. It turns out that $X$ is $p$-complete precisely when this unit map is an equivalence. This means that the functor $X \mapsto C^*(X,\overline{\mathbb{F}}_p)$ is fully-faithful when restricted to $p$-complete spaces and we can hence consider $p$-complete spaces as a suitable full sub-category of the opposite category of $E_\infty$-algebras. In addition to the conceptual importance of this result, it also has practical applications. For example, it means that we may construct an Adams-type spectral sequence to compute the homotopy groups of $X$ by resolving $C^*(X,\overline{\mathbb{F}}_p)$ into free $E_\infty$-algebras.