Put a half gallon of milk into a 2-quart crockpot. It's best to use one with a removable stoneware liner, but I think most of them have that now, anyway.
Heat on low for 2 1/2 hours. Turn off crockpot and let sit for 3 more hours. Although the cover is off in this picture, the crockpot should be covered for the entire 5 1/2 hours. You don't need to stand over your crockpot; I was out shopping one day while it was heating, and just ran in to switch it off after 2 1/2 hours. Then I headed back out and was home before the 3 hour time period was finished.
At the end of this time, take 1-2 cups of warm milk out of the crockpot. Whisk in 1/2 cup yogurt. I use Greek yogurt, because I like the flavors of those cultures.
Remove the liner from the crockpot. Leaving the lid on, wrap the whole thing in a bath towel. Let it sit for 8 hours. I put mine in a cold oven, because we have a cat. She's never gone near food on the counter, but I don't want to take any chances.
At the end of 8 hours, put the yogurt into the refrigerator.
UPDATE; Let sit in frig for about 10 hours.This will give the best flavor and texture. Sadly, I forgot about our yogurt, and it sat in the oven 8 hours, then overnight. It's a little thicker than I'd like, and the whey was beginning to separate. It will probably have a more tangy taste than I like.
I use raw, whole milk, straight from the dairy bulk tank. I have also used pasteurized, homogenized milk straight from the store. Both work equally well. If you're interested in such information, 1/2 cup of this yogurt has 84 calories, 7 grams of carbohydrate, and 5 grams each of fat and protein.