Thoroughly clean the existing concrete with a pressure washer to remove all dirt and debris. If there are areas with oil or grease stains, clean them with a commercial degreasing product and a scrub brush.
Mix a batch of concrete resurfacing product with water in a mixing bucket. This batch should be as thick as peanut butter.
Fill in any cracks or holes with a trowel holding the thick resurfacing product. Feather the edges of the product into the existing concrete as well as you can, but don't overly worry about it. The patches will be covered along with the rest of the concrete.
Allow the patches to dry for the amount of time advised by the resurfacing product's instructions. Some products will dry in only a few hours, while others must be left for an entire day.
Press horizontal pieces of lumber into the ground around the concrete if working on outdoor projects such as patios. This lumber will prevent the resurfacing product from spilling past the edges of the concrete and onto your yard. Hold the lumber in place with stakes if needed.
Mix a large batch of resurfacing product and water in a 5 gallon bucket, following the mixing ratio provided on the package. Use a drill mixer for five minutes to completely mix the components and break up any lumps. If desired, add a concrete coloring product to the mix.
Saturate the concrete surface with a garden hose, then remove any standing water with an industrial squeegee.
Pour the resurfacing product onto the concrete.
Spread the resurfacing product out evenly with the industrial squeegee on a long handle.
Spread a tarp over the resurfacing product as it dries. This will hold in moisture, slowing the drying process and strengthening the product.
Allow the resurfacing product to dry. If desired, brush it with a broom after it has partially hardened to create a no-slip surface.
Add additional layers of resurfacing product if all imperfections are not covered by the first layer. Re-saturate the surface with each new layer for the best adhesion.