Soak beans overnight; drain. Wash beans; place in a large Dutch oven. Cover with 1 gallon water; bring to a boil. Reduce heat and simmer 1 hour or until beans are almost tender. Remove from heat; drain beans, reserving 2 cups cooking liquid.
Heat oil in a saucepan over medium-high heat. Add onion, garlic, and serrano; saute 2 minutes or until onions are soft. Add beans, reserved liquid, poblano, salt, and pepper; cook 20 minutes or until beans are tender. Sprinkle with green onion.