Season brisket with salt and pepper. In a Dutch oven over medium-high setting, heat vegetable oil and brown brisket on both sides, about 5 minutes per side. Remove to a plate.
Add onions, carrot, and celery to the pot and saute about 5 minutes. Add garlic and ginger and saute about 5 minutes more. Add wine. Bring to a boil and reduce by half, about 10 minutes. Add soy sauce, brown sugar, star anise, cilantro, and stock, and bring to a boil.
Add brisket and any juices that have accumulated back to the pot. Lower heat to a gentle simmer. Cover and simmer about 3 hours or until very tender, turning brisket over every 45 minutes or so.
Transfer meat to a platter and let rest 20 minutes. Strain pot juices and discard solids. Let juices sit until the fat separates. Skim off the fat; then bring the sauce to a boil and reduce by half.
Slice meat thinly across the grain and place on a serving platter. Spoon sauce over the top and serve remaining sauce in a gravy boat.
You may make this dish a day ahead. Just cover meat and sauce separately and chill. Before serving, arrange meat in a baking dish, cover with foil, and rewarm in a 350 degrees oven about 40 minutes.