Kruskal's algorithm is a greedy algorithm that finds a minimum spanning tree for a connected, undirected graph. It finds the Minimum Spanning Tree (MST) by adding edges to the growing tree one by one, as long as they do not form cycles. The algorithm considers each edge individually and adds it to the spanning tree if it does not create a cycle. It arranges the edges in order of their weight and selects the minimum weight edge that does not form a cycle. This process continues until all the vertices are connected.