According to the Library of Congress:
In 1868, Commander in Chief John A. Logan of the Grand Army of the Republic issued General Order Number 11 designating May 30 as a memorial day “for the purpose of strewing with flowers or otherwise decorating the graves of comrades who died in defense of their country during the late rebellion, and whose bodies now lie in almost every city, village, and hamlet churchyard in the land.”
The first national celebration of the holiday took place May 30, 1868 at Arlington National Cemetery, where both Confederate and Union soldiers were buried. Originally known as Decoration Day, at the turn of the century it was designated as Memorial Day. In many American towns, the day is celebrated with a parade. …
In 1971, federal law changed the observance of the holiday to the last Monday in May and extended it to honor all soldiers who died in American wars. A few states continue to celebrate Memorial Day on May 30.