Peel, wash, and roughly chop your potatoes. Add them to a large pot and cover with cold water. Add half of the salt and stir. Bring to a boil, then simmer over medium-high heat for 20-25 minutes or until very soft and almost fall apart when poked with a fork.
Once ready, drain the potatoes and set them aside. In the same pot, heat oil over medium-low heat. Once hot, add the minced garlic (if using) and cook for 1 minute, stirring frequently. Then, add the curry powder and toast it in the oil for 2 minutes, until fragrant. Add the butter and milk, and stir to combine. Bring to a gentle boil, then remove from the heat.
Add the potatoes, salt, and black pepper and mix until everything is well covered in the curry mixture. Use a potato masher or a fork to mash the potatoes until creamy. You can also use a ricer, and in this case, you'll need to pass the potatoes through into the pot before you mix them with the curry and milk mixture.
Lastly, stir in the chopped cilantro (optional). Taste and adjust the flavor if needed, adding more salt for saltiness, milk for moisture, or butter for creaminess. Serve right away!